下面的代碼是排序遞歸函數,最后return的是一層層遞歸后的結果,但是當入參的 arr 是一個很長的數組時感覺想象一個個結果的時候太抽象怎么辦,有什么好的方法去理解嗎?var quickSort = function(arr) { if (arr.length <= 1) { return arr; } var pivotIndex = Math.floor(arr.length / 2); var pivot = arr.splice(pivotIndex, 1)[0]; var left = []; var right = []; for (var i = 0; i < arr.length; i++){ if (arr[i] < pivot) { left.push(arr[i]); } else { right.push(arr[i]); } } return quickSort(left).concat([pivot], quickSort(right));};
遞歸函數中return使用的問題.
守候你守候我
2019-02-11 16:23:10