
链表
链表
Rachel-0110
一个小白程序媛的碎碎念(尽管出走半生,归来仍是小白)
基本都是学习时的一些小笔记,语言比较“稚嫩”,如有错误敬请指正,感谢!
展开
-
2.3.1 设计一个递归算法,删除不带头结点的单链表L中所有值为x的节点
设计一个递归算法,删除不带头结点的单链表L中所有值为x的节点//定义一个单链表typedef struct LNode { ElemType data; struct LNode* next;}LNode, * LinkList;//初始化单链表bool InitList(LinkList& L) { L = NULL; //空表,防止脏数据 return true;}void delX(LinkList& L,ElemType x) { LNode* p; if原创 2022-04-13 20:40:22 · 1420 阅读 · 0 评论 -
循环单链表
循环单链表循环单链表的定义循环链表的初始化判表空判断结点p是否为循环单链表的表尾结点循环单链表的定义typedef struct LNode { ElemType data; struct LNode* next;}LNode,*LinkList;循环链表的初始化bool InitLIst(LinkList& L) { L = (LNode*)malloc(sizeof(LNode)); if (L == NULL) return false; L->next = L原创 2022-04-05 21:01:16 · 380 阅读 · 0 评论 -
双链表的相关操作(定义,后插,删除,遍历)
双链表的相关操作双链表的定义双链表的插入(后插)双链表的删除主函数双链表的定义typedef struct DNode { ElemType data; struct DNode* prior, * next;}DNode, * DLinklist;//----------双链表的初始化(带头结点)----------bool InitDLinkList(DLinklist& L) { L = (DNode*)malloc(sizeof(DNode)); //分配一个头结点 if原创 2022-04-05 20:44:51 · 927 阅读 · 0 评论 -
单链表的相关操作(定义,初始化,插入,删除,查找,求表长)
单链表的相关操作定义一个单链表不带头节点的单链表带头结点的单链表按位序插入(带头结点)按位序插入(不带头结点)指定结点的后插操作指定结点的前插操作按位序删除(带头结点)定义一个单链表typedef struct LNode { ElemType data; struct LNode* next;}LNode, * LinkList;不带头节点的单链表bool InitList(LinkList& L) { L = NULL; //空表,防止脏数据 return true;}b原创 2022-04-03 21:03:09 · 1578 阅读 · 0 评论