Heim  >  Artikel  >  Backend-Entwicklung  >  Ausführliche Erläuterung der Beispiele für binäre Suche und schnelle Sortierung in Python

Ausführliche Erläuterung der Beispiele für binäre Suche und schnelle Sortierung in Python

黄舟
黄舟Original
2017-10-14 10:23:372395Durchsuche

Dieser Artikel stellt die relevanten Kenntnisse der binären Python-Suche und der schnellen Sortierung im Detail anhand von Beispielcode vor.

Die Idee ist einfach und es gibt viele Details Das Programm ist in zweierlei Hinsicht einfach, ich habe beim Schreiben häufig Fehler gefunden, daher behalte ich es als Andenken.


#usr/bin/env python
def binary_search(lst,t):
  low=0
  height=len(lst)-1
  quicksort(lst,0,height)
  print lst
  while low<=height: 
    mid = (low+height)/2
    if lst[mid] == t:
      return lst[mid]
    elif lst[mid]>t:
      height=mid-1
    else:
      low=mid+1
  return -1
def quicksort( lst, left , right):
  low=left
  high=right
  key=lst[left]
  if left>=right:
    return 0
  while low<high:
    while low<high and key<lst[high]:
      high=high-1
    lst[low]=lst[high]
    while low<high and key>lst[low]:
      print lst[low]
      low=low+1
    lst[high]=lst[low]
    lst[low]=key
  quicksort( lst , left ,low-1)
  quicksort( lst , low+1 , right)
if __name__==&#39;__main__&#39;:
  print binary_search([4,8,1,5,10,2,12,3,6,9],4)

Zusammenfassung

Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung der Beispiele für binäre Suche und schnelle Sortierung in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn