stack_using_queues
stack_using_queues.go 源码
package main
//用队列实现栈
type MyStack struct {
queue []int
}
func constructor() MyStack {
return MyStack{}
}
func (this *MyStack) Push(x int) {
this.queue = append(this.queue, x)
n := len(this.queue)
if n > 1 {
last := this.queue[n-1]
copy(this.queue[1:], this.queue[0:n-1])
this.queue[0] = last
}
}
func (this *MyStack) Pop() int {
val := this.queue[0]
this.queue = this.queue[1:]
return val
}
func (this *MyStack) Top() int {
return this.queue[0]
}
func (this *MyStack) Empty() bool {
return len(this.queue) == 0
}
你可能感兴趣的文章
0
赞
热门推荐
-
2、 - 优质文章
-
3、 gate.io
-
8、 golang
-
9、 openharmony
-
10、 Vue中input框自动聚焦