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)
	}
}
相关推荐
三天不学习17 分钟前
Python 进阶学习之全栈开发学习路线
开发语言·python·学习
努力写代码的熊大32 分钟前
随机链表的复制数据结构oj题(力口138)
数据结构·链表
吗喽对你问好40 分钟前
java 知识点表格
java·开发语言
名字不要太长 像我这样就好1 小时前
【iOS】源码阅读(六)——方法交换
开发语言·macos·ios·objective-c·cocoa
大专生学编程1 小时前
QT Creator使用基本介绍
开发语言·qt
两圆相切1 小时前
开发语言的优劣势对比及主要应用领域分析
开发语言
Am心若依旧4092 小时前
C++设计模式之创建型模式
java·开发语言·数据结构·c++·设计模式
努力努力再努力wz2 小时前
【c++深入系列】:万字详解list(附模拟实现的list源码)
运维·c语言·开发语言·数据结构·c++·list
艺杯羹2 小时前
MyBatis 之分页四式传参与聚合、主键操作全解
java·开发语言·maven·mybatis
MC皮蛋侠客3 小时前
Python与MongoDB深度整合:异步操作与GridFS实战指南
开发语言·python·mongodb