Go 切片实现栈
Posted 知其黑、受其白
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Go 切片实现栈相关的知识,希望对你有一定的参考价值。
栈:先进后出
package main
import "fmt"
type stack struct
data []int
// 入栈
func (s *stack) Push(n int)
s.data = append(s.data, n)
// 出栈
func (s *stack) Pop() (int, bool)
if len(s.data) == 0
return 0, false
n := s.data[len(s.data)-1]
s.data = s.data[:len(s.data)-1]
return n, true
func main()
s := stack
// 入栈
s.Push(1)
s.Push(2)
s.Push(3)
// 出栈
for len(s.data) > 0
n, ok := s.Pop()
if ok
fmt.Println(n)
以上是关于Go 切片实现栈的主要内容,如果未能解决你的问题,请参考以下文章