資源描述:
《經(jīng)典排序算法總結(jié)材料(代碼)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫(kù)。
1、實(shí)用標(biāo)準(zhǔn)經(jīng)典排序算法總結(jié)(代碼)--fly分享目錄/*冒泡法2/*快速排序3/*插入排序4/*希爾(shell)排序5/*選擇排序6/*堆排序7/*歸并排序9附:排序算法原理:http://zh.wikipedia.org/wiki/Category:%E6%8E%92%E5%BA%8F%E7%AE%97%E6%B3%95flash演示:http://www.tyut.edu.cn/kecheng1/site01/suanfayanshi/list.asp?id=7文檔實(shí)用標(biāo)準(zhǔn)#include
2、#includeusingnamespacestd;/*冒泡法左右元素相比,往后冒泡*/templatevoidBubbleSort(T*r,intn){Ttemp;inti,j;for(i=0;ir[j+1]){temp=r[j];r[j]=r[j+1];r[j+1]=temp;}}}}文檔實(shí)用標(biāo)準(zhǔn)/*快速排序左邊比他小,右邊比他大,每次得到一個(gè)最左邊數(shù)據(jù)的位置*/template3、eT>voidQuickSort(Ta[],intlow,inthigh){if(low=elem)r--;if(l4、向右移,a[j+1]=a[j]*/templatevoidinsert_sort(Ta[],intn){inti,j;Telem;for(i=1;i=0&&elemvoidshell_insert(Tarray[],intd,intlen){inti,j
5、;Telem;for(i=d;i=0&&elemvoidshell_sort(Tarray[],intlen){intinc=len;do{inc=inc/2;文檔實(shí)用標(biāo)準(zhǔn)shell_insert(array,inc,len);}while(inc>1);}/*選擇排序逐一比較,最小的放前面
6、*/templatevoidSelectSort(Ta[],intn){inti,j,elemNum;Telem;for(i=0;i=a[2*s]&&a[s]>=a[2*s+1]*/temp
7、latevoidMax_heap(Ta[],intS,intlen){intl=2*S;intr=2*S+1;intmaxI=S;Telem;if(la[maxI]){maxI=l;}if(ra[maxI]){maxI=r;}if(maxI!=S){elem=a[S];a[S]=a[maxI];a[maxI]=elem;Max_heap(a,maxI,len);}}template文檔實(shí)用標(biāo)準(zhǔn)voidHeapSort(Ta[]
8、,intn){inti;Telem;for(i=n/2;i>=0;i--){Max_heap(a,i,n);}for(i=n-1;i>=1;i--){elem=a[0];a[0]=a[i];a[i]=elem;n=n-1;Max_heap(a,0,n);}}文檔實(shí)用標(biāo)準(zhǔn)/*歸并排序左邊小左邊,左邊++;右邊小取右邊,右邊++*/templatevoi