js 배열 의 실현 원리

1006 단어
1. 우 리 는 평소에 배열 의 정렬 을 사용 할 때 js 자체 의 sort () 방법 을 호출 합 니 다.var arr = [5,1,8,1,2,9,3,4]; console.log(arr.sort()); //[1, 1, 2, 3, 4, 5, 8, 9] 2. 사실 우 리 는 간단 한 방법 에 따라 스스로 실현 할 수 있다. 주요 한 실현 방향 은 다음 과 같다. 1. 데이터 세트 에서 기준점 (현재 배열 의 중간 에 있 는 그 수치) 을 찾 고 2. 두 개의 배열 을 만들어 왼쪽 과 오른쪽 에 있 는 배열 을 각각 저장 하고 3. 재 귀 를 이용 하여 한 번 씩 비교 한 다음 에 배열 을 연결 하여 정렬 효 과 를 얻는다.function quickSort (arr) {if (arr. length < = 1) {return arr;} var num = Math. floor (arr. length / 2), / / 중간 값 을 찾 습 니 다. 부동 소수점 이면 numValue = arr. splice (num, 1) [0]; / 중간 값 을 찾 습 니 다.
        var leftArr = [],
            rightArr = [];
        for (var i = 0; i < arr.length; i++) {
            if (arr[i] < numValue) {
                leftArr.push(arr[i]);
            } else{
                rightArr.push(arr[i]);
            }
        }
        //    2  ,          
        return quickSort(leftArr).concat([numValue],quickSort(rightArr));
    }
    //      
    var new_arr = quickSort(arr);  //[1,1,2,3,4,5,8,9]

좋은 웹페이지 즐겨찾기