各種排序問題

2021-08-30 17:41:27 字數 1235 閱讀 9682

有冒泡,選擇,插入,歸併,快速排序問題

void

maopao

(int s,

int len)}}

}

voidxz(

int s,

int len)}}

}

void

insert

(int a,

int len)

a[i+1]

= key;

}}

void

mergesort

(int a,

int p,

int r,

int c)

}

void

merge

(int a,

int p,

int q,

int c,

int r)

while

(j <= r) c[k++

]= a[j++];

while

(i <= q) c[k++

]= a[i++];

for(i =

0; i) a[p+i]

= c[i]

;//將排好的陣列再按順序存回原陣列的指定位置

}

void

quicksort

(int a,

int p,

int r)

}

int

partition

(int a,

int p,

int r)

else

return j;

}}

void

quicksort

(int a,

int left,

int right)

a[i]

=key;

//此時i與j已經相等,把key的值賦給a[i],左邊

quicksort

(a,left,i-1)

;//遞迴左邊,求解子問題

quicksort

(a,i+

1,right)

;//遞迴右邊,求解子問題

}

資料結構 排序問題 各種排序哦

這兩天一直總結排序問題,然後話不多啦,直接上 最主要的是要學會快速排序和氣泡排序,其它排序要熟練即可。include include define datatype int void insertsort datatype a,datatype len void biinsertsort datat...

排序 各種排序演算法

每次將乙個待排序的記錄,按其關鍵字大小插入到前面已經排好序的子表中適當位置,直到全部記錄插入完成為止 待排序的記錄放在陣列r 0,n 1 中 排序過程中將r分成兩個子區間,有序區r 0,i 1 無序區r i,n 1 將當前無序區的第1個記錄,插入到有序區中適當的位置上 每次是有序區增加乙個記錄,知道...

各種排序演算法

交換函式 void swap int a,int b 氣泡排序 氣泡排序 bubble sort,台灣譯為 泡沫排序或氣泡排序 是一種簡單的排序演算法。它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排...