1樓:啦啊加啦
小增量排序」(來diminishing increment sort),是直接插源
2樓:匿名使用者
希爾排序,在比較出次序問題後,會將指標處值與隔兩個步長處的數值繼續比較,知道減或者加步長後陣列處值不存在為止,通過計算時間複雜度能準確反應每個排序方法的過程。
3樓:寺內莉珂
>1)這個j-d>1應該為j-d>=1吧
希爾排序錯誤
4樓:匿名使用者
排序問題
void shell(int n,int d,int num)int main (void)
shell_sorta(a,40000);
for (int i = 0;i<40000;i++)return 0;}
5樓:匿名使用者
int型的數值範圍為-32768~32767
你用40000當然出錯
6樓:匿名使用者
因為int型的數值範圍是-32768~32767所以出錯
7樓:剝殼凸槽
一二樓正解個p!!!
人家都說了int四位元組 明顯是i的值被改亂了,三樓的tmpi才是正解,四樓不懂就不要亂說
大家幫看一下,希爾排序問題
8樓:
參考一下下邊的算來法吧,源希望能幫到你
void shellsort(record r[ ], int n) }}
希爾排序怎麼排 5
9樓:匿名使用者
這麼簡單的問題。
初始步長為4 即把第一個字母和第五個字母進行排序, 第二個和第六個進行排序 以此類推,
整體不變
10樓:
增量為6,則從第1個數,拿它跟第6個數、第12個、....,一起比較,排成從小到大的順序,之後就是第2個數,拿它跟第7個數、第13個、....(同樣道理)
增量為3,同樣道理
11樓:冉莊薊悅心
希爾排序是插入排序的一種。
基本思想:
先取一個小於
n的整數d1
作為第一個增量,把檔案的全部記錄分成d1
個組。所有距離為dl
的倍數的記錄放在同一個組中。先在各組內進行直接插人排序;然後,取第二個增量d2
t 2 ,即所有記錄放在同一組中進行直接插入排序為止。 該方法實質上是一種分組插入方法。 12樓:手機使用者 d是3,意思就是把位置為1+3*0,1+3*1,1+3*2……放在一起 2+3*0,2+3*1,2+3*2……放在一起 3+3*0,3+3*1,3+3*2……放在一起 請教有關希爾排序的問題 13樓:匿名使用者 #include 後面是空的,補上了 table沒有定義,腦補了一個 shell sort演算法有問題,改了 基本上就是這些了 下面是改後的 #include typedef struct table; void insert(table *tab)printf("\n"); } void shell_sort(int arr,int size) }for(i=0;i printf("%d ",arr[i]); } void main() }while(1);} 排序問題 void shell int n,int d,int num int main void shell sorta a,40000 for int i 0 i 40000 i return 0 int型的數值範圍為 32768 32767 你用40000當然出錯 因為int型的數值範圍是 3... 個人認為是快速排序。快速排序的最差複雜度可能會降為n 2,最快則是nlogn,但 是,平均情況下是較快的。而希爾排序的最差情況下,複雜度可能會降為n s 到n s之間,1 s 2 平均則是nlog 2n。理論上來看,希爾排序可能是效率比較高的。但是,實際情況來看,快速排序的實際效果很不錯。原因就是,... 兩個foreach迴圈影響了 請教php排序問題,樓上的是爭取的,其實就是對陣列進行排序的 array multisort f,sort asc php和mysql排序問題 50 沒這種排法,在 中或者資料庫中排序就分兩種,一種是數字排序,一種是字母排序,比如張的首字母是z,王的首字母是w,按照字母...希爾排序錯誤
快速排序希爾排序都是什麼意思,快速排序與希爾排序哪個效率更高?
php排序問題,請教PHP排序問題,