@cxm-2016
2016-11-06T16:56:26.000000Z
字数 375
阅读 1967
算法
版本:1
作者:陈小默
声明:禁止商用,禁止转载
一个栈中的元素类型为整型,如何在只用一个栈的情况下对原始数据排序?
使用任意语言实现,不能使用其他数据结构。
使用一个栈来存放排序过的数据,和一个额外变量用来存储需要排序的数据。
fun sort(stack: Stack<Int>) {
val help = Stack<Int>(stack.max)
var value: Int? = null
while (!stack.isEmpty) {
value = stack.pop()
while (!help.isEmpty && help.top < value)
stack.push(help.pop())
help.push(value)
}
while (!help.isEmpty)
stack.push(help.pop())
}