数据结构c++(王红梅)课件1 - 副本.ppt

  1. 1、本文档共54页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
关于教材 课程性质 数据结构是计算机专业的专业基础课 公共基础课、专业基础课、专业方向课、专业选修课 在教学计划中的地位:核心、承上启下 前导课:高等数学、离散数学、程序设计语言 后续课:数据库、操作系统、编译原理…… 属于武术中的“练功”科目 “练武不练功,到头一场空” 考研 学习目标 掌握基本的数据结构 工具箱→复用、修改、重组 培养算法设计能力、程序设计能力 算法——程序的灵魂 问题求解过程:问题→想法→算法→程序 程序设计研究的层次:算法→方法学→语言→工具 培养算法分析能力 评价算法、改进算法 学习要求 循序渐进,切忌心浮气躁 提高课外学习的时间和内容 理解科学而不是背诵科学→读书 正确对待考试 作习题 华罗庚:“学数学不做习题等于入宝山而空返” 作实验 计算机学科是一门科学性与工程性并重的学科,表现为理论和实践紧密结合的特征。 如何使用立体化教材 主教材 思想火花、人物小传 辅导教材 知识结构、学习要点、重点难点释疑、习题解析 实验教材 验证实验→综合实验→设计实验 网站 学校精品课程网站bb.ustl.edu.cn 成绩组成 实验成绩 30%:出勤+程序+报告 期末考试成绩 70%:接近同类学校考研水平 课程设计 成绩:优、良、中、及、不及 数据、数据元素、数据项之间的关系 包含关系:数据是由数据元素组成,数据元素是由数据项组成。 数据元素是讨论数据结构时涉及的最小数据单位,其中的数据项一般不予考虑。 数据结构从逻辑上分为四类: ⑴ 集合:数据元素之间就是 “属于同一个集合” ; 数据结构从逻辑上分为四类: ⑴ 集合:数据元素之间就是 “属于同一个集合” ; ⑵ 线性结构:数据元素之间 存在着一对一的线性关系; 数据结构从逻辑上分为四类: ⑴ 集合:数据元素之间就是 “属于同一个集合” ; ⑵ 线性结构:数据元素之间 存在着一对一的线性关系; ⑶ 树结构:数据元素之间存在 着一对多的层次关系; 数据结构从逻辑上分为四类: ⑴ 集合:数据元素之间就是 “属于同一个集合” ; ⑵ 线性结构:数据元素之间 存在着一对一的线性关系; ⑶ 树结构:数据元素之间存在 着一对多的层次关系; ⑷ 图结构:数据元素之间存在 着多对多的任意关系。 通常有两种存储结构: 1. 顺序存储结构:用一组连续的存储单元依次存储数据元素,数据元素之间的逻辑关系由元素的存储位置来表示。 通常有两种存储结构: 1. 顺序存储结构:用一组连续的存储单元依次存储数据元素,数据元素之间的逻辑关系由元素的存储位置来表示。 2. 链接存储结构:用一组任意的存储单元存储数据元素,数据元素之间的逻辑关系用指针来表示 。 逻辑结构和存储结构之间的关系 数据的逻辑结构属于用户视图,是面向问题的,反映了数据内部的构成方式;数据的存储结构属于具体实现的视图,是面向计算机的。 一种数据的逻辑结构可以用多种存储结构来存储,而采用不同的存储结构,其数据处理的效率往往是不同的。 欧几里德算法 算法的相关概念 1.算法(Algorithm):是对特定问题求解步骤的一种描述,是指令的有限序列。 2. 算法的五大特性: ⑴ 输入:一个算法有零个或多个输入。 ⑵ 输出:一个算法有一个或多个输出。 ⑶ 有穷性:一个算法必须总是在执行有穷步之后结束,且每一步都在有穷时间内完成。 ⑷ 确定性:算法中的每一条指令必须有确切的含义,对于相同的输入只能得到相同的输出。 ⑸ 可行性:算法描述的操作可以通过已经实现的基本操作执行有限次来实现。 1.4 算法及算法分析 m n r 例:欧几里德算法——辗转相除法求两个自然数 m 和 n 的最大公约数 1.4 算法及算法分析 算法的描述方法——自然语言 优点:容易理解 缺点:冗长、二义性 使用方法:粗线条描述算法思想 注意事项:避免写成自然段 1.4 算法及算法分析 ① 输入m 和n; ② 求m除以n的余数r; ③ 若r等于0,则n为最大公约数,算法结束;否则执行第④步; ④ 将n的值放在m中,将r的值放在n中; ⑤ 重新执行第②步。 例:欧几里德算法 自然语言 1.4 算法及算法分析 优点:流程直观 缺点:缺少严密性、灵活性 使用方法:描述简单算法 注意事项:注意抽象层次 算法的描述方法——流程图 1.4 算法及算法分析 N 开始 输入m和n r=m % n r=0 m=n;n=r 输出n 结束 Y 流 程 图 例:欧几里德算法 1.4

文档评论(0)

整理王 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档