使用 JavaScript 排序栈的元素
我们需要编写一个 JavaScript 函数,该函数接收一个整数数组。使用数组的递归和 push 和 pop 方法,该函数应就地对数组进行排序。
示例
此代码如下:
const stack = [−3, 14, 18, −5, 30]; const sortStack = (stack = []) => { if (stack.length > 0) { let t = stack.pop(); sortStack(stack); sortedInsert(stack, t); }; } const sortedInsert = (stack, e) => { if (stack.length == 0 || e > stack[stack.length − 1]) { stack.push(e); } else { let x = stack.pop(); sortedInsert(stack, e); stack.push(x); } } sortStack(stack); console.log(stack);
输出
控制台中的输出为:
[ −5, −3, 14, 18, 30 ]
广告