Python 거품 정렬 알고리즘의 전체 실례 구현

거품 정렬: 말 그대로 거품처럼 위로 솟아오르고 아래로 가라앉는 것이다.
실현 원리: 서로 인접한 두 개의 수치를 순서대로 비교하고 비교적 작은 수치는 왼쪽으로 옮기고 비교적 큰 수치는 오른쪽으로 옮기며 순서대로 1라운드를 비교한 후 가장 큰 수치는 가장 오른쪽으로 배치해야 한다.그리고 다시 반복적인 비교를 계속합니다. 수치가 교환되지 않을 때까지 정렬이 완료됩니다.
예 설명:
무질서 목록arr = [7,6,5,3,9,2,8,1,4]
수열 길이:len = 9
첫 번째 순서:
i = 1;
arr = [7,6,5,3,9,2,8,1,4]
  • 7>6=>[6,7,5,3,9,2,8,1,4]수치가 작은 것은 왼쪽으로, 수치가 맞는 것은 오른쪽으로 한다
  • 7>5 =>[6,5,7,3,9,2,8,1,4]
  • 7>3 =>[6,5,3,7,9,2,8,1,4]
  • 7<9 =>[6,5,3,7,9,2,8,1,4]
  • 9>2 =>[6,5,3,7,2,9,8,1,4]
  • 9>8 =>[6,5,3,7,2,8,9,1,4]
  • 9>1 =>[6,5,3,7,2,8,1,9,4]
  • 9>4 =>[6,5,3,7,2,8,1,4,9]
  • 첫 번째 교환은 8번째, 즉 하위 순환 비교 횟수는 j=len-i=9-1=8이다
    이로써 첫 번째 거품은 이미 완성되었고, 최대 수치 9는 이미 맨 오른쪽으로 배열되었다.
    두 번째 순서:
    i = 2
    arr = [6,5,3,7,2,8,1,4,9]
  • 6>5 => [5,6,3,7,2,8,1,4,9]
  • 6>3 => [5,3,6,7,2,8,1,4,9]
  • 6<7 =>[5,3,6,7,2,8,1,4,9]
  • 7>2 =>[5,3,6,2,7,8,1,4,9]
  • 7<8 =>[5,3,6,2,7,8,1,4,9]
  • 8>1 =>[5,3,6,2,7,1,8,4,9]
  • 8>4 =>[5,3,6,2,7,1,4,8,9]
  • 두 번째 교환은 7차례, 즉 하위 순환 비교 횟수는 j=len-i=9-2=7
    이로써 두 번째 거품은 이미 완성되었다,arr=[5, 3, 6, 2, 7, 1, 4, 8, 9].
    ...
    다음도 이렇게 순서대로 순서를 비교하여 수조arr=[1,2,3,4,5,6,7,8,9]
    총 8번의 순서를 진행했다.
    Python 코드 구현:
    
    def bubbleSort(arr):
    	#  
    	arr_len = len(arr)
     #  =》 
    	for i in range(1, arr_len):
    		#  =》 
    		for j in range(0, arr_len - i):#  
    			if arr[j] > arr[j+1]: #  
    				arr[j], arr[j+1] = arr[j+1], arr[j] #  , 
    
    
    arr = [64, 34, 25, 12, 22, 11, 90]
    bubbleSort(arr)
    print(' :')
    for i in range(len(arr)):
    	print('%d'%arr[i], end=' ')
    
    
    총결산
    파이썬의 거품 정렬 알고리즘 실현에 관한 이 글은 여기까지 소개합니다. 파이썬의 거품 정렬 알고리즘 실현에 관한 더 많은 내용은 저희 이전의 글을 검색하거나 아래의 관련 글을 계속 훑어보십시오. 앞으로 많은 응원 부탁드립니다!

    좋은 웹페이지 즐겨찾기