计算机软件技术基础2ppt,第2章 计算机软件技术基础理论ppt课件.ppt

《第2章 计算机软件技术基础理论ppt课件.ppt》由会员分享,提供在线免费全文阅读可下载,此文档格式为ppt,更多相关《第2章 计算机软件技术基础理论ppt课件.ppt》文档请在天天文库搜索。

1、第 2 章数据结构概述 2.1 数据结构的基本知识 1 . 数据结构研究内容用计算机求解的四个基本阶段分析阶段 分析待解决的问题,抽象数学模型设计阶段设计求解此数学模型的算法编码阶段依据算法编写程序代码测试阶段调试并测试应用系统举例 1人事信息管理系统用顺序文件存储,需要顺序查询利用数据库组织、管理, 以备查询编号 姓名 性别 出生年月 籍贯 学历 职务 01 张三 男 1954/9 北京 大学 教师02 李四 男 1968/3 上海 大学 教师..........................................举例 1 小结数学模型:线性结构基本操作:查询、增加、删除、更新组织形式:内容无序  顺序查找方法 内容有序 二分查找方法举例 2(1)(21)(12)(321)(231)(312)(213)(132)(123)输出 n 的全排列。举例 2小结数学模型:树型结构。

2、基本操作: 生成树型结构输出树中某层的全部结点举例 3已知某省各县之间的交通图。现要在这个省内建立一所省级医院,问题是这所医院应该建在哪个县,才能使离这个医院最远的县到达该医院的路途最近 ?举例 3问题转化为求有向图的 中心点。c10204010502030abde举例 3设图G=(V,E) 。对于任意顶点k,我们称 E(k)= max{dist(i,k)} ( iV) 为顶点 k 的偏心度,具有最小 偏心度的顶点为图G的中心点。举例 3d为中心点,所以省医院应该建在d县。a ~b 60c 80 d 50e 70顶点 偏心度c10204010502030abde举例 3 小结数学模型:有向图结构基本操作 生成有向图求有向图的中心点总结数据结构主要研究诸如线性结构,树型结构及图型结构等非数值性数学模型在计算机中的表示及操作。2 基本概念和术语2.1 数据结构的基本知识 数据 (Data)对。

3、客观事物的符号表示能输入到计算机中能被计算机加工处理 符号的总称(集合)例如:整数,实数,字符串,图像,声音....数据元素 (Data Element)是数据的基本单位数据集合中的一个实体一个数据元素可以由若干个数据项组成,数据项是数据不可分割的最小单位。数据对象 (Data Object)性质相同的数据元素的集合是数据集合的子集整数集合即为整数数据对象字母集合即为字母数据对象图像集合即为图像数据对象数据、数据元素、数据对象数据数据元素数据对象数据结构 (Data Structure)指相互之间存在一种或多种特定关系的数据元素的 集合=============================== Data_Structure = ( D, S ) D :数据元素的有限集合 S :D上关系的有限集合举例:复数抽象数据类型complex=(C,R)C={c1,c2}R={P}P={}c1为实。

4、部,c2为虚部数据结构(Data Structure)程序设计 = 数据结构+算法3 四种基本的数据结构2.1 数据结构的基本知识 四种基本的数据结构集合关系 是否属于同一集合四种基本数据结构线性结构关系数据元素(元素)之间仅存在前后关系,又称一对一关系。四种基本数据结构树型结构关系数据元素(结点)之间存在层次关系,又称一对多关系。四种基本数据结构图型结构关系数据元素(顶点)之间存在邻接关系,又称多对多关系。4 数据的逻辑结构与存储结构 2.1 数据结构的基本知识 逻辑结构在数据结构中描述的关系是数据元素之间的逻辑关系,又称逻辑结构。物理结构(存储结构)数据结构在计算机中的表示(映像)被称为物理结构或存储结构,其中应该包含数据元素的内容及其关系的表示。数据元素的映像位位串数据元素的映像结点域关系的映像顺序映像  顺序存储结构非顺序映像 链式存储结构顺序映像特点:借助于数据元素在存储器中。

5、的位置来表示数据元素之间的逻辑关系实现:一维数组类型非顺序映像特点:借助指示元素存储地址的指针来表示数据元素之间的逻辑关系实现:指针类型或引用类型2.2 算法分析 一.算法的概念——定义为解决特定问题所采用的步骤描述,它是指令的有限序列,其中每条指令表示一个或多个操作。一.算法的概念——特性有穷性:算法执行有穷步后,自动停止确定性:含义确切, 无二义性可行性:每个基本操作均可实现输入:零个或多个输入输出:至少一个输出二.算法的评价——评价标准正确性可读性健壮性时间及空间的使用效率 事后统计 事先估算选择的实现语言编译程序的质量硬件本身的速度设计的算法问题的规模二.算法的评价——时间效率的量度二.算法的评价——算法的构成控制结构基本语句算法二.算法的评价——语句频度基本语句执行的次数称为语句频度二.算法的评价——语句频度 for (i=1;i<=n;i++) for (j=1;j

6、;=n;j++) { c[i][j]=0; for (k=1;k<=n;k++) c[i][j]+=a[i][k]*b[k][j] }==========================f(n)=n3+n2二.算法的评价——语句频度i=0;while ((i=n) k=0 ;else k=i;===========================平均 f(n)=(0+1+2+...+n-1)/n=(n-1)/2二.算法的评价——时间复杂度设语句频度函数为 f(n) T(n) = O(f(n))T(n)表示随着n的增长与f(n)同步增长举例:O(n) 表示随着n 的增长,时间以线性速度增长。二.算法的评价——常见的时间复杂度O(1)O(log n)O(n)O(nlog n)O(n2)O(n3).....Tn2nnlogn2二.算法的评价——算法的空间复杂度 空间复杂度 S(n)= O(f(n))空间原始空间辅助空间三.算法的描述方法自然语言流程图——传统流程图与N-S图类PASCAL 语言高级语言。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值