Желаемый результат работы HackerRank достигается на CodePen, но на HackerRank становится неудачным. - PullRequest
0 голосов
/ 03 января 2019

Я работаю над проблемой Quicksort2 на HackerRank. Я не могу понять, как он хочет, чтобы я вывел решение.

Я пытался console.log отсортированных массивов по мере их создания, массив отсортированных массивов и массив массивов, преобразованных в строки. Возврат из функции processData, похоже, ничего не делает.

function checkSort(arr) {
    for (let i = 0; i < arr.length - 1; i++) {
        if (arr[i] > arr[i + 1]) return false;
    }
    return true;
}

function processData(input) {
    let sortedArrays = [];
    quickSort(input);

    function quickSort(input) {

        if (input.length <= 1) return input;

        let pivot = [input[0]];
        let left = [], right = [];
        for (let i = 1; i < input.length; i++) {
            input[i] < pivot ? left.push(input[i]) : right.push(input[i]);
        }

        let newArr = quickSort(left).concat(pivot, quickSort(right));
        if (checkSort(newArr)) sortedArrays.push(newArr);
        return newArr;
    }
    console.log(sortedArrays);
}

Я ожидаю, что он будет соответствовать желаемому выводу HackerRank.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...