Go语言标准库中的双向链表的基本用法

什么是二分查找区间?

什么是链表?

链表节点的代码实现:

链表的遍历:

链表如何插入元素?

go语言标准库的链表:

练习代码:

go 复制代码
package main

import (
	"container/list"
	"fmt"
)

func main() {
	// 创建双向链表
	lst := list.New()

	// 向头部添加元素
	lst.PushFront(1)

	// 向尾部添加元素
	lst.PushBack(2)
	lst.PushBack(3)

	// 获取头元素
	front := lst.Front()
	fmt.Println(front.Value)

	// 获取尾元素
	back := lst.Back()
	fmt.Println(back.Value)

	// 获取链表长度
	fmt.Println(lst.Len())

	// 移除元素
	lst.Remove(front)
	fmt.Println(lst.Len())

	// 遍历链表
	fmt.Println("=========")
	for e := lst.Front(); e != nil; e = e.Next() {
		fmt.Println(e.Value)
	}
}
相关推荐
MC皮蛋侠客13 分钟前
C++17 多线程系列(二):共享数据与同步——mutex 与 condition_variable
开发语言·c++·多线程
愈努力俞幸运15 分钟前
python 三引号
android·开发语言·python
止语Lab18 分钟前
Go跨平台编译的决策树:从\
开发语言·决策树·golang
Das120 分钟前
【408】C语言标识符
c语言·开发语言
zxd02031124 分钟前
DevOps + CI/CD:从理念到 Jenkins 实战落地
java·开发语言
qq_白羊座24 分钟前
GitLab CI + Jenkins 双流水线模式Jenkins 端实现
java·开发语言
say_fall25 分钟前
8086汇编程序设计_从基础到实战
开发语言·汇编·8086
Kurisu57528 分钟前
深度解析:Go 语言 GMP 调度器模型与内核线程探测
java·数据库·golang
一条泥憨鱼33 分钟前
深入理解Java反射(超详细)
java·开发语言·spring·mybatis·反射
sycmancia35 分钟前
Qt——Qt中的调色板
开发语言·qt