Search
 
SCRIPT & CODE EXAMPLE
 

JAVASCRIPT

sorting algorithms in node.js

function sort(arr, compareFn = (a, b) => a <= b) {

    if (!arr instanceof Array || arr.length === 0) {
        return arr;
    }

    if (typeof compareFn !== 'function') {
        throw new Error('compareFn is not a function!');
    }

    const partition = (arr, low, high) => {
        const pivot = arr[low];
        while (low < high) {
            while (low < high && compareFn(pivot, arr[high])) {
                --high;
            }
            arr[low] = arr[high];
            while (low < high && compareFn(arr[low], pivot)) {
                ++low;
            }
            arr[high] = arr[low];
        }
        arr[low] = pivot;
        return low;
    };

    const quickSort = (arr, low, high) => {
        if (low < high) {
            let pivot = partition(arr, low, high);
            quickSort(arr, low, pivot - 1);
            quickSort(arr, pivot + 1, high);
        }
        return arr;
    };

    return quickSort(arr, 0, arr.length - 1);
}
Comment

PREVIOUS NEXT
Code Example
Javascript :: req.body is empty express js 
Javascript :: create expo project with a specific expo SDK 
Javascript :: JavaScript Creating Symbol 
Javascript :: having written a counter with redux how does it work 
Javascript :: update array usestate 
Javascript :: javascript find first element of array 
Javascript :: jquery add url parameter to link dynamically by class 
Javascript :: browser.find_element_by_ <a 
Javascript :: useEffect() Execute Function When React Component Loads 
Javascript :: open dev server 
Javascript :: chess.js 
Javascript :: angular property binding 
Javascript :: set VS Code SSH Remote shell to zsh 
Javascript :: first unique character in a string javascript 
Javascript :: push object into array javascript 
Javascript :: what is prototype javascript 
Javascript :: how to put submit type of input element in a queryselector in javascript 
Javascript :: iterate array 
Javascript :: Object.create Polyfill 
Javascript :: make service singleton angular 
Javascript :: jquery find attribute from siblings 
Javascript :: angular json and cli json file 
Javascript :: filepond remove uploaded file 
Javascript :: jquery deferred 
Javascript :: react table className 
Javascript :: Detect Pangram 
Javascript :: back to top scroll animation jquery 
Javascript :: option selected aotu value 
Javascript :: save js 
Javascript :: count items in json 
ADD CONTENT
Topic
Content
Source link
Name
8+6 =