[JavaScript Implementation of the Sorting Algorithm] And the Sorting Algorithm javascript
Bubble Sorting
- Let bubbleSort = (arr, cmp = compare) => {
- For (let I = 0; I <arr. length; I ++ ){
- For (let j = I; j> 0; j --){
- If (cmp (arr [j], arr [j-1]) <0 ){
- [Arr [j], arr [j-1] = [arr [j-1], arr [j];
- }
- }
- }
- Return arr;
- };
Insert sort
- For (let I = 0; I <a. length; I ++ ){
- Let toCmp = arr [I];
- For (let j = I; j> 0 & toCmp <a [j-1]; j --)
- Arr [j] = a [j-1];
- Arr [j] = toCmp;
- }
- Return arr;
- }
Select sort
- Let I, m, j;
- For (I =-1; ++ I <a. length ;){
- For (m = j = I; ++ j <a. length ;){
- If (arr [m]> arr [j]) m = j;
- }
- [Arr [m], arr [I] = [arr [I], arr [m];
- }
- Return arr;
- }
Merge Sorting
- If (arr. length <2) return arr;
- Let middle = parseInt (arr. length/2 ),
- Left = arr. slice (0, middle ),
- Right = arr. slice (middle );
- Return merge (mergeSort (left), mergeSort (right ));
- }
- Let merge = (left, right) => {
- Let result = [];
- While (left. length & right. length ){
- Left [0] <= right [0]?
- Result. push (left. shift ()):
- Result. push (right. shift ());
- }
- While (left. length) result. push (left. shift ());
- While (right. length) result. push (right. shift ());
- Return result;
- }
Quick sorting
- If (arr. length <= 1) return arr;
- Let detail = Math. floor (arr. length-1)/2 );
- Let val = arr [lower], less = [], more = [];
- Arr. splice (kernel, 1 );
- Arr. forEach (function (e, I, ){
- E <val? Less. push (e): more. push (e );
- });
- Return (quicksort (less). concat ([val], quicksort (more ))
- }
More java, java interview questions, java learning http://techfoxbbs.com