C语言链表基本操作
来源:互联网 发布:海通期货交易软件 编辑:程序博客网 时间:2024/05/09 04:51
链表时一个空表,或是一个指向节点的链接,且这个节点包含一个元素和一个指向链表的链接
0、准备工作
#include <stdlib.h>typedef int Item;typedef struct Node Node;typedef struct Node *List;struct Node{ Item data; List next;};Node* NewNode(int data){ Node *pNode = (Node*)malloc(sizeof(Node)); if(NULL != pNode) { pNode->data = data; pNode->next = NULL; } return pNode;}
1、创建、销毁链表
// 逆序创建链表Node* AddFront(List list, Node *pNode){ if(NULL != pNode) { pNode->next = list; } return pNode;}// 双指针销毁链表void DestroyList(List list){ Node *iter = list; while(NULL != iter) { list = iter->next; free(iter); iter = list; }}
2、插入、删除节点
// 在某个节点之后插入一个节点void InsertNode(Node *pNode, Node *pNewNode){ if(NULL != pNode) { pNewNode->next = pNode->next; pNode->next = pNewNode; }}// 删除某个节点之后的节点void DeleteNode(Node *pNode){ if(NULL != pNode && NULL != pNode->next) { Node *t = pNode->next; pNode->next = t->next; free(t); t = NULL; }}
- C语言链表基本操作
- C语言链表的基本操作
- C语言链表常见基本操作
- C语言链表的基本操作
- C语言实现链表基本操作
- c语言链表基本操作
- 链表的基本操作[C语言]
- C语言链表基本操作
- 双向链表的基本操作(C语言)
- C语言实现双向链表的基本操作
- C语言实现双向链表的基本操作
- 最基本的单向链表操作 C语言
- 双向循环链表基本操作(C语言)
- C语言--链表基本操作(课时5)
- c语言实现静态链表的基本操作
- c语言实现循环链表的基本操作
- c语言实现双向链表的基本操作
- 单向链表基本操作(C语言实现)
- Java的编译机制小总结
- IEnumerable<T>转换成ObservableCollection<T>
- Android源码学习之如何使用eclipse+NDK
- 递归算法的时间复杂度计算
- Modify Http Headers
- C语言链表基本操作
- ppp协议帧格式
- 大整数的阶层
- iOS:KVO的概述与使用
- 字符串匹配的KMP算法
- PC/AT
- 把一个有序整数数组放到二叉树
- 关于小米的代码门
- 使用 libevent 和 libev 提高网络应用性能