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
자 바스 크 립 트 관련 내용 에 관심 이 있 는 독자 들 은 본 사이트 의 주 제 를 볼 수 있다.
본 고 에서 말 한 것 이 여러분 의 자 바스 크 립 트 프로 그래 밍 에 도움 이 되 기 를 바 랍 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
JS 판단 수조 네 가지 실현 방법 상세그러면 본고는 주로 몇 가지 판단 방식과 방식 판단의 원리를 바탕으로 문제가 있는지 토론하고자 한다. 예를 들어 html에 여러 개의 iframe 대상이 있으면 instanceof의 검증 결과가 기대에 부합되지 않을...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.