欢迎来到天天文库
浏览记录
ID:42989688
大小:253.50 KB
页数:34页
时间:2019-09-27
《数据结构_清华大学版》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、数据结构为什么要学习数据结构?它研究了计算机需要处理的数据对象和对象之间的关系。它刻画了应用中涉及到的数据的逻辑组织。它描述了数据在计算机中如何存储、传送、转换。主要讨论哪几种数据结构?从传统的观点来看数据的逻辑结构线性结构非线性结构ABCDEFABDEGCABCDE线性结构非线性结构数据的物理结构顺序结构链表结构散列结构索引结构在该数据结构上的操作从面向对象的观点来看应用级的类与关系分类一般与特殊组装整体与部分关联包容与实体实现级的类与关系消息消息通信refersto组装一个类的实例是另一个类的实现部分ispartof继承从既存类定义新类isaisk
2、indofisanimplementationof包容(container)isa栈isanimplementationofisanimplementationof基于数组的栈基于链表的栈ispartof逆波兰表示计算器为什么选用面向对象及C++语言讲述数据结构?PASCAL与C描述是面向过程的。C++描述兼有面向过程与面向对象的特点。Java描述是面向对象的。用面向对象及C++描述与国际接轨,是市场需要。学习数据结构需要注意些什么?知识方面系统掌握基本数据结构的特点及其不同实现。了解并掌握各种数据结构上主要操作的实现及其性能(时间、空间)的分析。技能
3、方面掌握各种数据结构的使用特性,在算法设计中能够进行选择。掌握常用的递归、回溯、迭代、递推等方法的设计掌握自顶向下、逐步求精的程序设计方法。算法编制时需要注意些什么?正确性前置(先决)条件、后置条件可读性清晰性、一致性、简明性结构性、模块性容错性试编写一个函数计算n!*2n的值,结果存放于数组A[arraySize]的第n个数组元素中(0narraySize)若设计算机中允许的整数的最大值为maxInt,则当n>arraySize或者对于某一个k(0kn),使得k!*2k>maxInt时,应按出错处理。可有如下三种不同的出错处理方式:用cerr
4、<<及exit(1)语句来终止执行并报告错误;用返回整数函数值0,1来实现算法,以区别是正常返回还是错误返回;在函数的参数表设置一个引用型的整型变量来区别是正常返回还是某中错误返回。#include"iostream.h"#definearraySize100#defineMaxInt0x7fffffffintcalc(intT[],intn){inti,value=1;if(n!=0){for(i=1;iMaxInt/n/2)return0;//直接判断i!*2i>MaxInt//是危险的}va
5、lue*=n*2;}T[n]=value;//n!*2nT[n]return1;}voidmain(){intA[arraySize],i;for(i=0;i6、,是限制存取点的表。这几章涉及的知识点和需要掌握的重点是什么?第一章基本概念第二章数组及其应用第三章链表及其应用第四章栈与队列第一章涉及的知识点什么是数据与数据结构抽象数据类型及面向对象概念数据类型;数据抽象与抽象数据类型;面向对象的概念用于描述数据结构的语言数据结构的抽象层次算法的性能分析与度量算法的性能标准;算法的后期测试;算法的事前估计;空间复杂度度量;时间复杂度度量;考核要求理解:数据结构概念理解:数据结构的抽象层次理解:抽象数据类型概念理解:面向对象概念理解:算法的定义及算法的特性掌握:算法性能分析与度量方法第二章涉及的知识点作为抽象数据类型7、的数组数组的定义和初始化;作为抽象数据类型的数组;顺序表顺序表的定义和特点顺序表的类定义顺序表的查找、插入和删除使用顺序表的事例字符串字符串的抽象数据类型;字符串操作的实现;字符串的模式匹配考核要求理解:数组的抽象数据类型定义理解:顺序表的定义方式及实现掌握:顺序表作为集合的简单操作理解:字符串的定义及实现综合应用:应用字符串实现简单的文本编辑中的操作第三章涉及的知识点单链表单链表的结构和类定义;单链表中的插入与删除;带表头结点的单链表;用模板定义的单链表类;静态链表循环链表循环链表的类定义用循环链表解约瑟夫问题;多项式及其相加多项式的类定义多项式的加8、法双向链表理解:单链表的定义及实现理解:循环链表的定义及实现理解:双向链表的定义及实现理解:多
6、,是限制存取点的表。这几章涉及的知识点和需要掌握的重点是什么?第一章基本概念第二章数组及其应用第三章链表及其应用第四章栈与队列第一章涉及的知识点什么是数据与数据结构抽象数据类型及面向对象概念数据类型;数据抽象与抽象数据类型;面向对象的概念用于描述数据结构的语言数据结构的抽象层次算法的性能分析与度量算法的性能标准;算法的后期测试;算法的事前估计;空间复杂度度量;时间复杂度度量;考核要求理解:数据结构概念理解:数据结构的抽象层次理解:抽象数据类型概念理解:面向对象概念理解:算法的定义及算法的特性掌握:算法性能分析与度量方法第二章涉及的知识点作为抽象数据类型
7、的数组数组的定义和初始化;作为抽象数据类型的数组;顺序表顺序表的定义和特点顺序表的类定义顺序表的查找、插入和删除使用顺序表的事例字符串字符串的抽象数据类型;字符串操作的实现;字符串的模式匹配考核要求理解:数组的抽象数据类型定义理解:顺序表的定义方式及实现掌握:顺序表作为集合的简单操作理解:字符串的定义及实现综合应用:应用字符串实现简单的文本编辑中的操作第三章涉及的知识点单链表单链表的结构和类定义;单链表中的插入与删除;带表头结点的单链表;用模板定义的单链表类;静态链表循环链表循环链表的类定义用循环链表解约瑟夫问题;多项式及其相加多项式的类定义多项式的加
8、法双向链表理解:单链表的定义及实现理解:循环链表的定义及实现理解:双向链表的定义及实现理解:多
此文档下载收益归作者所有