亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

java - 希爾排序的疑問

瀏覽:99日期:2023-10-30 18:01:28

問題描述

public static void sort(long[] arr){int h = 1; // 初始化間隔// 計算最大間隔while(h < arr.length / 3){ h = 3 * h + 1;}while(h > 0){ long temp = 0; for(int i = h; i < arr.length; i++){temp = arr[i]; // temp等于數組第i個元素的值int j = i;while(j > h - 1 && arr[j - h] > temp){ arr[j] = arr[j - h]; j-=h;}arr[j] = temp; } // 下一個h值 h = (h - 1) / 3;} }

疑問:while(j > h - 1 && arr[j - h] > temp) 這行代碼,j > h - 1; 不懂為啥 j > 0 會出現數組越界異常,而 j > h - 1 就不會。

@奔跑如風 ,能幫忙看看嗎?謝謝~

問題解答

回答1:

j > h - 1 && arr[j - h] > temp

這兩句合起來看,你的j>0無法保證j - h是大于等于0的。

回答2:

我也覺得可能是j>0無法滿足j-h>=0的情況。你可以把arr數組開的很大,如果還錯的話那就肯定是這個原因,但是從代碼上看,我覺得j-h始終是大于等于0的。回頭幫你調試下分析分析。

標簽: java
相關文章:
主站蜘蛛池模板: 日韩欧美一级a毛片欧美一级 | 亚洲乱码国产乱码精品精98 | 欧美无遮挡一区二区三区 | 91精品国产乱码久久久久久 | 免费看的一级片 | 久久精品国产99国产 | 香蕉综合视频 | japanesefree夫妇互换| 一级性视频 | 国产精品亚洲精品日韩已满 | 日本高清视频网址 | 精品国产91久久久久久久a | 国产黄色在线 | 久久国产精品偷 | 国产手机在线观看 | 综合国产福利视频在线观看 | 成人亚洲国产精品久久 | 成人自拍在线 | 国产精品久久久天天影视香蕉 | 日韩伦理亚洲欧美在线一区 | 亚洲一级特黄特黄的大片 | 亚洲偷图色综合色就色 | 国产一级毛片亚洲久留木玲 | 亚洲男女激情 | 免费网站在线观看国产v片 免费网站成人亚洲 | 起视碰碰97摸摸碰碰视频 | 国产精品久久久久一区二区 | 欧美1024性视频 | 欧美黄色大片免费 | 久久国内精品自在自线400部o | 国产免费全部免费观看 | 亚洲综合二区 | 美国一级大黄大色毛片视频一 | 深夜做爰性大片中文 | 国产一区二区免费 | 污污短视频 | 日韩在线中文字幕 | 日韩在线观看高清 | 免费在线观看污片 | 青草草在线观看 | 久久久久夜色精品波多野结衣 |