2019独角兽企业重金招聘Python工程师标准>>>
链表,c语言和数据结构的一个连接
算法:
通俗定义: 解题的方法和步骤
狭义定义: 对存储数据的操作,对不同的存储结构要完成某一个功能所执行的操作是不一样的
比如,要输出数组中所有元素的操作和要输出链表中所有元素的操作肯定是不一样的
这说明,算法是依附于存储结构的,不同的存储结构,所执行的算法的不一样的
广义定义: 也叫泛型,无论数据是如何存储的,对该数据的操作都是一样的。
我们至少可以通过两种结构来存储数据
数组
优点:存取速度快
缺点:需要一整排的空闲空间;插入元素和删除元素的效率很低。
链表
专业术语:
头结点:
1,头结点的数据类型和首节点的类型是一模一样的
2,头结点是首节点前面的那个节点
3,头结点并不存放有效数据
4,设置头结点的目的是为了方便对链表的操作
头指针: 存放头结点地址的指针变量
首节点: 存放第一个有效数据的节点
尾节点: 存放最后一个有效数据的节点
确定一个链表,需要一个参数——头指针
优点:插入删除元素的效率高,不需要一个连续很大的空间
缺点:要查找某一个位置的元素,效率低
学PHP的小蚂蚁 博客 http://my.oschina.net/woshixiaomayi/blog