셸 스 크 립 트 의 거품 정렬 법 (배열 배열 배열 그룹 은 작은 것 에서 큰 것 으로 상세 하 게 설명 되 어 있 습 니 다)

11029 단어 shell거품 정렬
  • 거품 정렬 은 배열 의 두 요 소 를 여러 번 비교 한 다음 에 정렬 하 는 것 이다
  • .
  • 원리 분석:
  • arr=(12 77 60 90 10)         
            :
                 ,        ,        
                  ,        ,     
          。
         ,             ,       
          ,              
        ,  ${#arr[@]}-1   ,          
         :
         :arr[0]=12  < arr[1]=77      arr[0],    arr[1]         
      :arr=(12 77 60 90 10)
         :arr[0]=77   >  arr[1]=60
      :arr=(12 60 77 90 10)
    ....
         :arr[3]=90   >  arr[4]=10
      :arr=(12 60 77 10 90)
             90      
         :...
    ......    
    
  • 예시:
  • #!/bin/bash
    list=(90 20 10 70 80 99 77 55 95 76)  ##      
    
    for ((i=1;i<${#list[*]};i++));do   ##        
      
      for ((j=0;j<${#list[@]}-1;j++));do  ##        
        
        if [ ${list[j]} -gt ${list[j+1]} ];then
          
          t=${list[j]}   ##        ,      
          
          list[j]=${list[j+1]}  ##        
          
          list[j+1]=$t   ##        ,       
        
        fi
      done
    done
    echo "${list[*]}"  ##    
    
    

    좋은 웹페이지 즐겨찾기