日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
C語言中快速排序法如何使用-創(chuàng)新互聯(lián)

這篇文章運用簡單易懂的例子給大家介紹C語言中快速排序法如何使用,代碼非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

成都創(chuàng)新互聯(lián)公司是一家成都網(wǎng)站建設、成都網(wǎng)站制作,提供網(wǎng)頁設計,網(wǎng)站設計,網(wǎng)站制作,建網(wǎng)站,按需求定制開發(fā),網(wǎng)站開發(fā)公司,從2013年開始是互聯(lián)行業(yè)建設者,服務者。以提升客戶品牌價值為核心業(yè)務,全程參與項目的網(wǎng)站策劃設計制作,前端開發(fā),后臺程序制作以及后期項目運營并提出專業(yè)建議和思路。

快速排序法的排法:首先每次排序的時候設置一個基準點,將小于等于基準點的數(shù)全部放到基準點的左邊;然后將大于等于基準點的數(shù)全部放到基準點的右邊;最后在每次交換的時候就不會像冒泡排序一樣每次只能在相鄰的數(shù)之間進行交換,交換的距離就大的多了。

快速排序法的排法:

算法思想:

(1)  我們從待排序的記錄序列中選取一個記錄(通常第一個)作為基準元素(稱為key)key=arr[left],然后設置兩個變量,left指向數(shù)列的最左部,right指向數(shù)據(jù)的最右部。

C語言中快速排序法如何使用

(2)  key首先與arr[right]進行比較,如果arr[right]key則我們只需要將right--,right--之后,再拿arr[right]與key進行比較,直到arr[right]

C語言中快速排序法如何使用

(3)  如果右邊存在arr[right]key,則將arr[right]=arr[left],如果arr[left]

C語言中快速排序法如何使用

(4)  然后再移動right重復上述步驟

C語言中快速排序法如何使用

(5)  最后得到 {23 58 13 10 57 62} 65 {106 78 95 85},再對左子數(shù)列與右子數(shù)列進行同樣的操作。最終得到一個有序的數(shù)列。

C語言中快速排序法如何使用

算法實現(xiàn):

public class QuickSort {
 
   public static void quickSort(int [] arr,int left,int right) {
      int pivot=0;
      if(left=key) {
            right--;
         }
         arr[left]=arr[right];
         while(left
排序前:[65, 58, 95, 10, 57, 62, 13, 106, 78, 23, 85]
排序后:[10, 13, 23, 57, 58, 62, 65, 78, 85, 95, 106]

關于C語言中快速排序法如何使用就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。


名稱欄目:C語言中快速排序法如何使用-創(chuàng)新互聯(lián)
URL網(wǎng)址:http://www.dlmjj.cn/article/icjeg.html