动手实现 数据结构 之 “单向链表”
2015-05-09 22:50
609 查看
头插入单向链表 C 语言实现
#include <stdio.h> struct node { int data; struct node * next; }; int main() { // 头插入链表 // create list struct node n9[10]; struct node * phead = NULL; for(int i=9; i>=0; i--) { n9[i].data = i*i; n9[i].next = phead; phead = &n9[i]; } // insert nd after insertPos struct node nd; nd.data = 33; struct node * insertPos = &n9[3]; nd.next=insertPos->next; insertPos->next = &nd; // find 81 struct node * pos = phead; while(pos != NULL) { if(pos->data == 81) break; pos = pos->next; } if(pos != NULL) printf("find pos->data: %d\n", pos->data); // delete n9[2]; struct node * deletePos = &n9[9]; if(deletePos->next != NULL) deletePos->next = deletePos->next->next; else { struct node * pos = phead; while(pos != NULL) { if(pos->next == deletePos) break; pos = pos->next; } if(pos != NULL) pos->next = pos->next->next; } // out put struct node * ptemp = phead; while(ptemp != NULL) { printf("%d ", ptemp->data); ptemp = ptemp->next; } printf("\n");
相关文章推荐
- 数据结构学习之链表(单向、单循环以及双向)(递归实现)
- java实现数据结构之单向链表
- 数据结构Java实现03----单向链表的插入和删除
- 数据结构——单向链表的链式存储及实现
- 数据结构复习——线性表的链式存储实现(单向链表)
- 数据结构学习系列三-单向循环链表(c++实现且应用模板)
- 数据结构Java实现03----单向链表的插入和删除
- 基本数据结构的实现——单向链表
- 数据结构练习--单向链表的实现
- 数据结构的基础-单向链表所构造的栈 c++实现
- 数据结构学习:单向链表的模板类实现
- 数据结构-C++实现(二):单向链表
- 【数据结构】单向循环链表实现
- 动手实现 数据结构 之 “跳跃链表”
- 【数据结构练习】单向链表实现、链表逆序实现
- 【数据结构|剑指Offer】单向链表的各项操作实现
- 数据结构Java实现 --单向链表的插入和删除
- Python实现基础数据结构--单向链表
- 动手实现 数据结构 之 “邻接链表图”
- 单向链表实现数据结构中的栈