C++数据结构学习笔记(线性表)
下午重学很长时间数据结构(简单总结一下,我还没实现,只能说会部分思路)
线性表有两种结构一个是线性存储结构还有一个是链式存储结构。
线性存储结构实现是顺序表;
链式存储结构实现为单链表双链表等等。
一、顺序表
顺序表与一维数组相似,可能可以理解为实现可以通过定义数组、指针数组。
顺序表基本操作主要有初始化、销毁、插入、删除。
(1)初始化就是创建线性表,创建线性表就是动态分配内存空间给线性表,分配成功之后需要初始化线性表(申请空间,表长,容量);如果线性表长度为零就已经分配好了空间。
(2)销毁就是利用析构函数
(3)插入,将数据插入到顺序表中第i个位置,先判断表是否满,i的值是否合理(不合理就抛出异常),如果满了,需要首先扩容然后将最后的元素向后移动(循环在前),最后插入。
(4)删除,如果表空需要抛出异常,i的位置是否合理,最后将元素删去,然后将最靠近删除元素的数值向前移。

浙公网安备 33010602011771号