Go语言list(列表)

Python013

Go语言list(列表),第1张

2021-11-10

列表是一种非连续的存储容器,有多个节点组成,节点通过一些变量记录彼此之间的关系

单链表和双链表就是列表的两种方法。

原理:A、B、C三个人,B懂A的电话,C懂B的电话只是单方知道号码,这样就形成了一个单链表结构。

如果C把自己的号码给B,B把自己的号码给A,因为是双方都知道对方的号码,这样就形成了一个双链表结构

如果B换号码了,他需要通知AC,把自己的号码删了,这个过程就是列表的删除操作。

在Go语言中,列表使用 container/list 包来实现,内部的实现原理是双链表,列表能够高效地进行任意位置的元素插入和删除操作。

列表初始化的两种办法

列表没有给出具体的元素类型的限制,所以列表的元素可以是任意类型的,

例如给列表中放入了一个 interface{} 类型的值,取出值后,如果要将 interface{} 转换为其他类型将会发生宕机。

双链表支持从队列前方或后方插入元素,分别对应的方法是 PushFront 和 PushBack。

列表插入函数的返回值会提供一个 *list.Element 结构,这个结构记录着列表元素的值以及与其他节点之间的关系等信息,从列表中删除元素时,需要用到这个结构进行快速删除。

遍历完也能看到最后的结果

学习地址: http://c.biancheng.net/view/35.html

https://oktools.net/regex

https://github.com/cdoco/common-regex

https://blog.csdn.net/zfy1355/article/details/52959803

运算符用于在程序运行时执行数学或逻辑运算。

1.算术运算符

Go 语言的算术运算符如图,假设A值为10,B值为20。

2.关系运算符

Go 语言的关系运算符如图,假设A值为10,B值为20。

3.逻辑运算符

Go 语言的逻辑运算符如图。假定A值为True,B值为False。

4.位运算符

位运算符对整数在内存中的二进制位进行操作。

位运算符比一般的算术运算符速度要快,而且可以实现一些算术运算符不能实现的功能。如果要开发高效率程序,位运算符是必不可少的。

Go 语言的位运算符如图。假定 A = 60,B = 13,其二进制数转换如下。

A = 0011 1100

B = 0000 1101

5.赋值运算符

Go 语言的赋值运算符如图。

6.其他运算符

Go 语言的其他运算符如图。

运算符的优先级

所谓优先级,就是当多个运算符出现在同一个表达式中时,先执行哪个运算符。