GO基础之List

时间:2024-01-25 18:40:22

一、List定义

概述
1、list是一种非连续存储的容器,由多个节点组成,节点通过一些变量记录彼此之间的关系。list有多种实现方法,如单向链表、双向链表等。
2、Go语言中list的实现原理是双向链表。list能高效地进行任意位置的元素插入和删除操作

go中的list

  • Golan的标准库提供了高级的数据结构List。具体在包 container/ist。
  • container/ist包里主要有两个数据结构类型:“ Element”、“List”;
  • Element类型代表双向链表中的一个元素,相当于C++里面的" iterator";
  • List代表一个双向链表。List零值为一个空的、可用的链表。
  • Element有Prev和Next方法用于得到前一个或者下一个 Element,Element可以直接调用 Value属性;

二、list的使用

1、 通过container/list包的New方法声明list

  • •变量名:=list.New()

2、通过var声明list

  • • var 变量名 list.List
  • • list与切片和map不同,没有具体元素类型的限制。list中的元素可以是任意类型。
  • •在CPP里面,list的成员必须是同一个数据类型,但是Go语言中却允许list中插入任意类型的成员。
  • •建议使用New()实现声明list