JS 정렬 알고리즘 의 거품 정렬,정렬 선택 및 삽입 정렬 실례 분석

본 고의 실례 는 JS 정렬 알고리즘 의 거품 정렬 을 설명 하고 정렬 과 삽입 정렬 을 선택한다.여러분 께 참고 하도록 공유 하 겠 습 니 다.구체 적 으로 는 다음 과 같 습 니 다.
거품 정렬: 
배열 의 데 이 터 를 차례대로 인접 한 두 수의 크기 를 비교 하 다.
만약 앞의 데이터 가 뒤의 데이터 보다 크다 면 이 두 개의 수 를 교환 하 세 요.
시간 복잡 도 O(n^2)

function bubble(array){
 var temp;
 for(var i=0; i<arr.length; i++){
  for(var j=0; j<arr.length; j++){
   if(arr[j]>arr[j+1]){
    temp = arr[j+1];
    arr[j+1] =arr[j];
    arr[j]=temp;
   }
  }console.log(arr);
 }
}//    

정렬 선택:
먼저 원본 배열 에서 가장 작은 데 이 터 를 선택 하고 첫 번 째 위치 1 의 데이터 와 교환 합 니 다.
남 은 n-1 개의 데이터 중에서 작은 데 이 터 를 선택 하여 두 번 째 위치의 데이터 와 교환 합 니 다.
반복 되 며 마지막 두 데이터 가 교환 되 었 음 을 알 고 있 습 니 다.
시간 복잡 도 O(n^2)

function selectionSort(array){
 var min,temp;
 for(var i=0; i<array.length-1; i++){
  min=i;
  for(var j=i+1; j<array.length; j++){
   if(array[j]<array[min]){
    min=j;
   }
  }
  swap(array,min,i);
 }
 console.log(array);
}//    
function swap(array,i,j){
 var temp =array[i];
 array[i]=array[j];
 array[j]=temp;
}//      

삽입 정렬:
우선 앞의 두 데 이 터 를 어 릴 때 부터 크게 비교 하 다.
이 어 세 번 째 데 이 터 를 앞의 두 데이터 와 비교 해 세 번 째 데 이 터 를 적당 한 위치 에 삽입 했다.이런 식 으로 유추 하 다.
(정렬 을 삽입 하면 두 개의 순환 이 있 고 외부 순환 은 배열 을 하나씩 이동 시 키 며 내부 순환 은 대외 순환 에서 선택 한 요소 와 그의 앞의 수 를 비교 합 니 다.)
시간 복잡 도 O(n^2)

function insertSort(arr){
 var temp, j;
 for(var i=1; i<arr.length; i++){
  temp =arr[i];
  j=i;
  while(j>0 && arr[j-1]>temp){
   arr[j]=arr[j-1];
   j--;
  }
  arr[j]=temp;
 }
}

PS:정렬 에 관 한 프 리 젠 테 이 션 도 구 를 추천 합 니 다.참고 하 시기 바 랍 니 다.
온라인 애니메이션 프레젠테이션 삽입/선택/거품/병합/힐/빠 른 정렬 알고리즘 프로 세 스 도구:
http://tools.jb51.net/aideddesign/paixu_ys
자 바스 크 립 트 관련 내용 에 관심 이 있 는 독자 들 은 본 사이트 의 주 제 를 볼 수 있다.
본 고 에서 말 한 것 이 여러분 의 자 바스 크 립 트 프로 그래 밍 에 도움 이 되 기 를 바 랍 니 다.

좋은 웹페이지 즐겨찾기