python快速尋找演算法應用執行個體

來源:互聯網
上載者:User
本文執行個體講述了Python快速尋找演算法的應用,分享給大家供大家參考。

具體實現方法如下:

import randomdef partition(list_object,start,end):  random_choice = start  #random.choice(range(start,end+1))  #把這裡的start改成random()效率會更高些  x = list_object[random_choice]  i = start  j = end  while True:    while list_object[i] < x and i < end:      i += 1    while list_object[j] > x:      j -= 1    if i >= j:      break    list_object[i],list_object[j] = list_object[j],list_object[i]  print list_object  #list_object[random_choice] = list_object[j]  #list_object[j] = random_choice  return jdef quick_sort(list_object,start,end):  if start < end:    temp = partition(list_object,start,end)    quick_sort(list_object,start,temp-1)    quick_sort(list_object,temp + 1 ,end)    a_list = [69,65,90,37,92,6,28,54]quick_sort(a_list,0,7)print a_list

程式測試環境為Python2.7.6

輸出結果如下:

[54, 65, 28, 37, 6, 69, 92, 90][6, 37, 28, 54, 65, 69, 92, 90][6, 37, 28, 54, 65, 69, 92, 90][6, 28, 37, 54, 65, 69, 92, 90][6, 28, 37, 54, 65, 69, 90, 92][6, 28, 37, 54, 65, 69, 90, 92]

希望本文所述對大家的Python程式設計有所協助。

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.