zoukankan      html  css  js  c++  java
  • go语言-golang基础-queue队列和stack堆栈

    1. queue队列

    队列(queue), 是一种FIFO(First In First Out)先进先出的线性表。通常用数据或者链表来实现队列。 队列只允许在后端插入,前端删除操作。
    性质:
    先进先出

    package main
    
    import "fmt"
    
    func main() {
        //队列
        //先进先出
        queue := []string{}
        //push
        //append
        queue = append(queue, "a", "b")
        queue = append(queue, "c")
        //pop
        x := queue[0]
        queue = queue[1:]
        fmt.Println("1: ", x)
    
        x = queue[0]
        queue = queue[1:]
        fmt.Println("2: ", x)
    
        x = queue[0]
        queue = queue[1:]
        fmt.Println("3: ", x)
    
    }
    
    /*
    $ go run queue.go
    1:  a
    2:  b
    3:  c
    */

    2. stack堆栈

    先进后出

    示例:

    package main
    
    import "fmt"
    
    func main() {
        //堆栈
        //先进后出
        stack := []string{}
        //push
        //append
        stack = append(stack, "a")
        stack = append(stack, "b")
        stack = append(stack, "c")
        //pop
        //后面移除
        x := stack[len(stack)-1]
        stack = stack[:len(stack)-1]
        fmt.Println("1: ", x)
    
        x = stack[len(stack)-1]
        stack = stack[:len(stack)-1]
        fmt.Println("2: ", x)
    
        x = stack[len(stack)-1]
        stack = stack[:len(stack)-1]
        fmt.Println("3: ", x)
    }
    /*
    $ go run stack.go
    1:  c
    2:  b
    3:  a
    
    */
  • 相关阅读:
    Redis Redis-Cell
    Redis Bloom Filter
    Redis HyperLogLog
    TCC、XA 、DTP区别
    MySQL索引最左匹配原则
    什么原因导致统计信息失效--SQL
    光标移动大法---落落大神
    mongo 导入导出
    oracle 10053 事件
    卸载12C
  • 原文地址:https://www.cnblogs.com/malukang/p/12708850.html
Copyright © 2011-2022 走看看