首页 > 代码库 > 算法基础、表、链表

算法基础、表、链表

数据结构:相互之间存在一种或多种特定关系的数据元素的集合。


算法:是对特定问题求解步骤的一种描述。


线性表的操作:

1、创建 (容量)

2、插入 (后移)

3、删除 (知道容量、和元素个数)

4、追加

5、获取元素 (下标和标志)

6、查找     (遍历)

7、清空 ()

8、是否为空

9、是否已满

10、元素的个数


链表:

由一系列不必在内在相连的结构组成,每个结构均含有表元素 指向包含该元素后 继元素的结构的指针


单链表: 循环链表

1、创建 (不需要容量)

2、插入 (q->next  = p->next ,q->next = p )

  (插入的效率非常高)(只是用有赋值操作就行行了)

3、删除 

中间删除( temp = p-next ; p->next = p->next->next)

开头删除 (temp = p; p = p->next)

删除结尾 (找到最后一个 的前一个 p 然后 p->next = NULL)

传参的时候传索引

4、追加 (p2->next = q ,q->next = NULL)

5、获取元素 (效率很低的,一个一个的遍历 从头开始) 

6、查找     (从头开始)

7、清空 (每个都要处理掉)

8、是否为空 (判断头是否为空)

9、是否已满 (没有满)

10、元素的个数 (计算节点)




算法基础、表、链表