数据结构之链表.ppt
《数据结构之链表.ppt》由会员分享,可在线阅读,更多相关《数据结构之链表.ppt(40页珍藏版)》请在第壹文秘上搜索。
1、SCIE, University of Electronic Science and Technology of China12.1线性表线性表线性表不同的实现方式:2.1.1顺序表 数组存储 顺序表定义 顺序表基本操作: 遍历、插入、删除 顺序表算法分析2.1.2单链表2.1.3双向链表 链接存储2.1.4循环链表SCIE, University of Electronic Science and Technology of China22.1线性表线性表#include stdio.h“struct list_seq int data20; int length;int main() st
2、ruct list_seq list; int no, i; list.length=0; for(i=0;inext=null;带头节点单链表对链表尾的判断空表: p-next=null;非空表:p-next=null;SCIE, University of Electronic Science and Technology of China92.1.2单链表单链表初始化算法:elemtype initlist(node * * h)*h=(node *)malloc(sizeof(node); (*h)-next=null;三、链表的基本操作访问插入删除SCIE, University o
3、f Electronic Science and Technology of China102.1.2单链表单链表n访问操作p问题描述:访问链表的第i个节点p问题分析:输入:链表,i输出:链点指向链点的指针p算法实现分析:只能从链表头开始,一个一个“数”下去,直到第i个。a1anheadtaila2temptemptempSCIE, University of Electronic Science and Technology of China112.1.2单链表单链表从自然语言到算法语言从自然语言到算法语言n如何描述我们找到第i个节点的动作。p 1、先找到链表首结点的地址p 2、通过“地址”
4、,找到链点p 3、在链点中找到后继元素的“地址”p 4、记录这个地址p = list-head;while( )p-data p = p-next;p-next SCIE, University of Electronic Science and Technology of China122.1.2单链表单链表 继续完善描述继续完善描述p 1、先找到链表首结点的地址p 2、通过“地址”,找到链点p 3、在链点中找到后继元素的“地址”p 4、记录这个地址,回到2p = list-head;while(1)p-data p = p-next;p-next ,计数,如果计数到i,就结束counter
5、 = 1;counter +;if( counter = i)break;SCIE, University of Electronic Science and Technology of China132.1.2单链表单链表node_type *get_node( list, i )while(counter next;int counter ;node_type * p;return p;if( p = = NULL) return NULL;p = list-head;counter = 1;a1nextaiai+1an pa2逐个“数”的动作counter: 1 23设i 3当in时算法
6、结果怎样?思考SCIE, University of Electronic Science and Technology of China142.1.2单链表单链表n注意1、p = p-next ;沿链表前进2、循环结束条件counter = = i 或 node = = NULLcounter list-length思考如果希望获得值为x的元素,如何实现?while( p-data = x & p != NULL)SCIE, University of Electronic Science and Technology of China152.1.2单链表单链表n链表插入操作p问题描述:在元
7、素ai前插入新的元素new_node ;p问题分析:输入:链表,location,x输出:插入新元素后的链表。p算法实现分析SCIE, University of Electronic Science and Technology of China162.1.2单链表单链表a1aianheadtailai-1.anewa1aianheadtailai-1.anew两个步骤:ai-1-next = anew ;anew-next = ai ;SCIE, University of Electronic Science and Technology of China172.1.2单链表单链表SCI
8、E, University of Electronic Science and Technology of China182.1.22.1.2单链表单链表while( counter next;void insertl(list, new_node , location) 找到ai-1p-next = new_node;new_node-next =?ai-1-next = anew ;anew-next = ai ;a1ai-1aianpnewnodea2p list-header; counter = 1qq = p-next;q;法一SCIE, University of Electro
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构