JS 정렬 의 거품 정렬 상세 설명

1651 단어 JS정렬
본 고 는 JS 거품 정렬 의 구체 적 인 코드 를 공유 하여 여러분 께 참고 하 시기 바 랍 니 다.구체 적 인 내용 은 다음 과 같 습 니 다.
설명 하 다.
시간 복잡 도 는 알고리즘 실행 에 걸 리 는 시간 을 말한다.
공간 복잡 도 는 프로그램 을 실행 하 는 데 필요 한 메모리 의 크기 를 가리킨다
안정 이란 a=b,a 가 b 앞 에 있 으 면 정렬 후 a 는 b 앞 에 있 습 니 다.
불안정 이란 a=b,a 가 b 앞 에 있 으 면 정렬 후 위 치 를 바 꿀 수 있 습 니 다.
--JS 거품 정렬-
의 원리
순서대로 인접 한 두 개의 값 을 비교 하고 뒤의 것 이 앞의 것 보다 작 으 면 작은 요 소 를 앞으로 배열 합 니 다.이 규칙 에 따라 순서 가 정확 할 때 까지 여러 차례 반복 되 고 점차 줄 어 들 었 다.
시간 복잡 도,공간 복잡 도,안정성
  • 평균 시간 복잡 도 O(n*n)
  • 최 적 상황 O(n)
  • 최 악의 경우 O(n*n)
  • 공간 복잡 도 O(1)
  • 안정성:안정
  • 거품 정렬 법
    
    var examplearr=[8,94,15,88,55,76,21,39];
    function sortarr(arr){
      for(i=0;i<arr.length-1;i++){
        for(j=0;j<arr.length-1-i;j++){
          if(arr[j]>arr[j+1]){
            var temp=arr[j];
            arr[j]=arr[j+1];
            arr[j+1]=temp;
          }
        }
      }
      return arr;
    }
    sortarr(examplearr);
    console.log(examplearr);
    
    
    해석 하 다.
    두 순환
    i=0 일 때 안의 순환 이 완전 하 게 실 행 됩 니 다.j=0 에서 j=6 까지 실 행 됩 니 다.이것 이 바로 첫 번 째 정렬 입 니 다.결 과 는 가장 큰 수 를 마지막 으로 배열 한 것 입 니 다.이 순환 이 끝 난 결 과 는[8,15,88,55,76,21,39,94]일 것 입 니 다.
    i=1 일 때 안의 순환 이 다시 완전 하 게 실 행 됩 니 다.가장 큰 숫자 가 마지막 에 있 기 때문에 배열 의 마지막 두 가 지 를 비교 할 필요 가 없습니다.이것 도 j여기까지 말 하면 규칙 은 분명 하 다.남 은 배열 에서 가장 큰 수 를 맨 뒤에 배열 하고 첫 번 째 순환 이 마지막 까지 실 행 될 때 i=6 이다.이때 j=0 은 배열 의 첫 번 째 와 두 번 째 항목 을 비교 하고 비교 가 끝나 면 돌아 와 야 한다.
    이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

    좋은 웹페이지 즐겨찾기