没有合适的资源?快使用搜索试试~ 我知道了~
(完整word版)数据结构(C语言版)期末复习汇总.doc
需积分: 5 0 下载量 98 浏览量
2022-10-24
01:40:02
上传
评论
收藏 817KB DOC 举报
温馨提示
试读
19页
(完整word版)数据结构(C语言版)期末复习汇总.doc
资源推荐
资源详情
资源评论
(完整 word 版)数据结构(C 语言版)期末复习汇总
1
数据结构(C 语言版) 期末复习汇总
第一章 绪论
数据结构:是一门研究非数值计算程序设计中的操作对象,以及这些对象之间的关系和操作的学科。
数据结构是一门综合性的专业课程,是一门介于数学、计算机硬件、计算机软件之间的一门核心课程。是设
计和实现编译系统、操作系统、数据库系统及其他系统程序和大型应用程序的基础。
数据:是客观事物的符号表示,是所有能输入到计算机中并被计算机程序处理的符号的总称。如数学计算中
用到的整数和实数,文本编辑中用到的字符串,多媒体程序处理的图形、图像、声音及动画等通过特殊编码
定义后的数据。
数据的逻辑结构划分:线、树、图
算法的定义及特性
算法:是为了解决某类问题而规定的一个有限长的操作序列。
五个特性:有穷性、确定性、可行性、输入、输出
评价算法优劣的基本标准(4 个):
正确性、可读性、健壮性、高效性及低存储量
第二章 线性表
线性表的定义和特点:
线性表:由 n(n≥0)个数据特性相同的元素构成的有限序列。线性表中元素个数 n(n≥0)定义为线性表的长度,
n=0 时称为空表。
非空线性表或线性结构,其特点:
(1)存在唯一的一个被称作“第一个”的数据元素;
(2)存在唯一的一个被称作“最有一个”的数据元素;
(3)除第一个之外,结构中的每个数据元素均只有一个前驱;
(完整 word 版)数据结构(C 语言版)期末复习汇总
2
(4)除最后一个之外,结构中的每个数据元素均只有一个后继。
顺序表的插入:n 个元素在 i 位插入,应移动(n-i+1)位元素。
顺序表存储结构的优缺点:
优点:
逻辑相邻,物理相邻;可随机存取任一元素;存储空间使用紧凑;
缺点:
插入、删除操作需要移动大量的元素;预先分配空间需按最大空间分配,利用不充分;
表容量难以扩充;
线性表的应用:
一般线性表的合并:★★★
算法 2.1:LA=(7,5,3,11) LB=(2,6,3)
合并后 LA=(7,5,3,11,2,6)
算法思想:扩大线性表 LA,将存在于线性表 LB 中而不存在于线性表 LA 中的数据元素插入到线性表 LA 中
去。只要从线性表 LB 中依次取得每个数据元素,并依值在线性表 LA 中进行查访,若不存在,则插入之。
有序表的合并:★★★
算法 2.2:LA=(3,5,8,11) LB=(2,6,8,9,11,15,20)
则 LC=(2,3,5,6,8,9,11,11,15,20)
算法思想:首先创建一个空表 LC,通过比较指针 pa 和 pb 所指向的元素的值,依次从 LA 或 LB 中“摘取”
元素值较小的结点插入到 LC 表的最后,当其中一个表变空是,说明此表的元素已归并完,则只要将另一个
非空表的剩余结点依次插入在 LC 表的最后即可。
线性链表:
线性链表的插入:插入元素师,指针的指向变化:
(完整 word 版)数据结构(C 语言版)期末复习汇总
3
上述指针修改用语句描述即为:s->next=p->next; p->next=s;
单链表的插入:★★★
void insertnode(linklist head,datetype x,int i){
listnode * p,*q;
p=getnode(head,i-1);
if(p==NULL)
error(〝position error〞);
q=(listnode *)
malloc(sizeof(listnode));
q–>data=x;
q–>next=p–next;
p–>next=q;
}
课本中:
s=new LNode;
s->data =e;
s->next=p->next;
p->next=s;
线性链表的删除:删除元素,指针的指向变化:
剩余18页未读,继续阅读
资源评论
智慧安全方案
- 粉丝: 3670
- 资源: 59万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功