版权声明:本文为博主原创文章未经博主允许不得转载。 /qq_/article/details/
在数据结构中顺序表和链表的增删查改是基础的知识,下边是我学习链表的一些心得
链表的增删查改。(后附完整代码实现)
尾插:(思路:先创建一个新的结点讓链表遍历到最后一个结点,让最后一个节点的next指向下一个newNode即可)
//尾插一个元素到链表中
思路:定义两个指针使其遍历链表,同时++当cur->next指向为空的时候,停止销毁cur指向的节点。
头插思维:创建一个新的节点使其next指向头结点,再将NewNode成为头结点
头删思维:将头结点变为頭结点的下一个节点,销毁之前的头结点即可
与尾插的思维相差不多但是不用遍历,直接使其创建的节点指向就行但是需要注意的是,需要先让新结点指向下一个节点不然pos的下一个知不道正确的地址。
//在下标为pos后插入值
思路:这个实现起来还是挺有意思的要实现一種偷梁换柱的思维。先实现元素之后的插入然后进行值交换,即可得到结果
//在下标为pos前插入值
后边的查找和删除就直接写代码了:
//实現删除指定的元素
//删除一个元素值出现的所有情况
//实现创建一个新的结点 //尾插一个元素到链表中 //在下标为pos后插入值 //在下标为pos前插入值 //查找┅个元素的值,返回地址 //实现删除指定的元素 //删除一个元素值出现的所有情况 //测试在pos下标后插入值 //测试在pos下标前插入一个元素 //测试在pos下标湔插入一个元素 //测试删除所有的a元素
//查找一个元素的值返回地址
版权声明:本文为博主原创文章未经博主允许不得转载。 /qq_/article/details/
4必须知道一个节点的前驱才能删除这个节点,所以当查找到这个节点时通过临时变量LinkList temp = p 存储前驱;
5,通过 标識变量 flag 来判断输入的ID是否已经存在多次循环中,当处理冲突之后还需要重新置位flag;
6一个文件调用另外一个文件内的函数时,需要声明(最好在头文件中声明);
3ID/MAC冲突检测程序段不起作用了?
措施:经分析是循环条件中没有遍历整个链表可以采用do-while 循环。