- 1
- 0
- 约1.38万字
- 约 71页
- 2019-05-06 发布于广东
- 举报
线性表 顺序表 链表 顺序表与链表的比较 线性表 (Linear List) 线性表的定义和特点 定义 n( ? 0)个数据元素的有限序列,记作 (a1, a2, …, an) ai 是表中数据元素,n 是表长度。 遍历 逐项访问: 从前向后 从后向前 线性表的特点 除第一个元素外,其他每一个元素有一个且仅有一个直接前驱。 除最后一个元素外,其他每一个元素有一个且仅有一个直接后继。 顺序表 (Sequential List) 顺序表的定义和特点 定义 将线性表中的元素相继存放在一个连续的存储空间中。 可利用一维数组描述存储结构 特点 线性表的顺序存储方式 遍历 顺序访问, 可以随机存取 顺序表的连续存储方式 顺序表(SeqList)的定义 #define ListSize 100 //最大允许长度 typedef int ListData; typedef struct { ListData * data; //存储数组 int length; //当前元素个数 } SeqList; 顺序表基本运算的实现 构造一个空的顺序表 void InitList ( SeqList L ) { L.data = ( ListData * ) malloc ( ListSize * sizeof ( ListData ) ); if ( L.data == NULL ) { printf ( “存储分配失败!\n” ); exit (1); } L.length = 0; } 按值查找:在顺序表中从头查找结点值等于给定值 x 的结点 int Find ( SeqList L, ListData x ) { int i = 0; while ( i L.length L.data[i] != x ) i++; if ( i L.length ) return i; else return -1; } 顺序查找图示 链表(Linked List) 链接表是线性表的链接存储表示 单链表 静态链表 循环链表 双向链表 单链表 (Singly Linked List) 特点 每个元素(表项)由结点(Node)构成。 线性结构 结点可以连续,可以不连续存储 结点的逻辑顺序与物理顺序可以不一致 表可扩充 单链表的定义 typedef char ListData; typedef struct node { //链表结点 ListData data; //结点数据域 struct node * link; //结点链域 } ListNode; typedef ListNode * LinkList; //链表头指针 LinkList first; //链表头指针 单链表中的插入与删除 插入 第一种情况:在第一个结点前插入 newnode-link = first ; first = newnode; 第二种情况:在链表中间插入 newnode-link = p-link; p-link = newnode; 第三种情况:在链表末尾插入 newnode-link = p-link; p-link = newnode; 删除 第一种情况: 删除表中第一个元素 第二种情况: 删除表中或表尾元素 带表头结点的单链表 表头结点位于表的最前端,本身不带数据,仅标志表头。 设置表头结点的目的是 统一空表与非空表的操作 简化链表操作的实现。 前插法建立单链表 从一个空表开始,重复读入数据: 生成新结点 将读入数据存放到新结点的数据域中 将该新结点插入到链表的前端 直到读入结束符为止。 后插法建立单链表 每次将新结点加在链表的表尾; 设置一个尾指针 r,总是指向表中最后一个结点,新结点插在它的后面; 尾指针 r 初始时置为指向表头结点地址。 单链表清空 void makeEmpty ( LinkList first )
您可能关注的文档
- 包头师范学院数据库原理与应用课件 第二章2.ppt
- 包头师范学院数据库原理与应用课件 第九章.ppt
- 包头师范学院数据库原理与应用课件 第六章.ppt
- 包头师范学院数据库原理与应用课件 第七章1.ppt
- 包头师范学院数据库原理与应用课件 第七章2.ppt
- 包头师范学院数据库原理与应用课件 第七章3.ppt
- 包头师范学院数据库原理与应用课件 第七章4.ppt
- 包头师范学院数据库原理与应用课件 第三章1.ppt
- 包头师范学院数据库原理与应用课件 第三章2.ppt
- 包头师范学院数据库原理与应用课件 第三章3.ppt
- 浙江省温州市2024-2025学年七年级上学期语文期末考查卷.docx
- 精品解析:北京市建华实验学校2024-2025学年七年级下学期期中英语试题(原卷版).docx
- 精品解析:北京市通州区2024-2025学年七年级下学期期末考试英语试卷(原卷版).docx
- 精品解析:北京市回民学校2024-2025学年九年级上学期期中语文试题(解析版).docx
- 精品解析:北京市海淀区2025-2026学年九年级上学期期末语文试题(解析版).docx
- 精品解析:北京市东城区汇文中学2025-2026学年八年级上学期期中语文试题(原卷版).docx
- 精品解析:北京市回民学校2024-2025学年九年级上学期期中语文试题(原卷版).docx
- 精品解析:2024-2025学年广东省广州市从化区街口镇中心小学人教版五年级上册期中测试数学试卷(解析版).docx
- 精品解析:北京市通州区2024-2025学年七年级下学期期末考试英语试卷(解析版).docx
- 精品解析:北京市建华实验学校2024-2025学年七年级下学期期中英语试题(解析版).docx
原创力文档

文档评论(0)