题解 | #用两个栈实现队列#

用两个栈实现队列

https://www.nowcoder.com/practice/54275ddae22f475981afa2244dd448c6

package main

var stack1 [] int
var stack2 [] int

func Push(node int) {
	stack1 = append(stack1, node)
}

func Pop() int {
	for ; len(stack1) != 0; {
		stack2 = append(stack2, stack1[len(stack1) - 1])
		stack1 = stack1[:len(stack1) - 1]
	}
	res := stack2[len(stack2) - 1]
	stack2 = stack2[:len(stack2) - 1]
	for ; len(stack2) != 0; {
		stack1 = append(stack1, stack2[len(stack2) - 1])
		stack2 = stack2[:len(stack2) - 1]
	}
	return res
}

全部评论

相关推荐

11-03 13:18
门头沟学院 Java
包行:平时怎么刷算法题的哇,字节的手撕听说都很难
字节跳动工作体验
点赞 评论 收藏
分享
10-29 15:51
嘉应学院 Java
后端转测开第一人:你把简历的学历改成北京交通大学 去海投1000份发现基本还是没面试
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务