预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共25页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

会计学教学(jiāoxué)目标引例(yǐnlì)描述1.1数据结构(shùjùjiéɡòu)的概念(1)数据的逻辑结构:数据元素之间的逻辑关系。数据的逻辑结构是从逻辑关系上描述数据,与数据的存储无关,是独立于计算机的。数据的逻辑结构可以看作是从具体问题抽象出来的数学模型。数据(逻辑)结构的形式定义(dìngyì):数据结构是一个二元组(D,R),其中D是数据元素的有限集,R是D上关系的有限集。(3)数据的运算:即对数据施加(shījiā)的操作。数据的运算定义在数据的逻辑结构上,只有确定了存储结构,才能具体实现这些运算。数据的运算通常包括以下五个操作:①插入:在指定位置上添加一个新结点。②删除:删去指定位置上的结点。③更新:修改某结点的值。④查找:寻找满足指定条件的结点及其位置。⑤排序:按指定的顺序使结点重新排列。1.2数据的逻辑结构(jiégòu)与存储结构(jiégòu)1.数据的逻辑结构(jiégòu)数据的逻辑结构(jiégòu)有以下两大类:①线性结构(jiégòu)有且仅有一个开始结点和一个终端结点,且所有结点都最多只有一个直接前驱和一个直接后继。线性表是一个典型的线性结构(jiégòu)。栈、队列、串等都是线性结构(jiégòu)。②非线性结构(jiégòu)一个结点可能有多个直接前驱和多个直接后继。多维数组、广义表、树和图等数据结构(jiégòu)都是非线性结构(jiégòu)。2.基本逻辑结构①集合结构:数据元素的有限集合。数据元素之间除了“属于同一个集合”的关系之外没有其他关系。②线性结构:数据元素的有序集合。数据元素之间形成(xíngchéng)一对一的关系。③树型结构:树是层次数据结构,树中数据元素之间存在一对多的关系。④图状结构:图中数据元素之间的关系是多对多的。3.存储结构存储结构可用以下(yǐxià)四种存储方法得到:①顺序存储方法:把逻辑上相邻的结点存储在物理位置上相邻的存储单元里,结点之间的逻辑关系由存储单元的邻接关系来体现。由此得到的存储表示称为顺序存储结构。通常借助程序设计语言的数组来描述。②链接存储方法:该方法不要求逻辑上相邻的结点在物理位置上也相邻,结点间的逻辑关系是由附加的指针字段来表示的。由此得到的存储表示称为链式存储结构。通常借助程序设计语言的指针来描述。如图:③索引存储方法:在建立结点信息的同时,还要建立附加的索引表来标识结点的地址。索引表中的每一项称为索引项,索引项由结点的关键字和该结点的存储地址组成,关键字是能唯一标识一个结点的数据项。④散列存储方法:该方法的基本思想是:根据结点的关键字直接计算出该结点的存储地址。同一逻辑结构采用不同的存储方法,可以得到(dédào)不同的存储结构。选择何种存储结构表示相应逻辑结构,视具体要求而定,主要考虑运算方便及算法的时空要求。1.3算法及算法分析一、算法及其特性1.算法是对特定问题求解步骤的一种描述,是指令的有限序列。一个算法是一系列将输入转换为输出的计算步骤。2.算法的重要特性①输入:算法应该有零个或多个输入。②有穷性:算法必须在执行有穷步骤之后正常结束。③确定性:算法中的每一条(yītiáo)指令必须有确切的含义。④可行性:算法中的每一条(yītiáo)指令必须是切实可执行的。⑤输出:算法应该有一个或多个输出。3.算法描述①框图算法描述:使用流程图或N-S图来描述算法;②非形式(xíngshì)算法描述:使用自然语言(中文或英文)和程序设计语言中的语句来描述算法。③类高级语言算法描述:使用类C或C++的所谓伪语言来描述算法。④高级语言算法描述:使用高级语言来描述算法。本课程将采用C语言进行算法描述。4.算法与程序的关系算法和程序都是用来表达解决问题的逻辑步骤;算法是对解决问题的方法的具体描述,程序是算法在计算机中的具体实现;程序是算法,但算法不一定是程序。二、算法分析1.算法设计的要求通常从以下五个方面评价算法的质量:①正确性:算法应能正确地实现预定功能和要求。②易读性:算法应易于阅读和理解,便于调试、修改和扩充。③健壮性:对正确的输入能得到正确的输出。当遇到非法输入时应能作适当的反应或处理,而不会产生不需要或不正确的结果。④高效性:解决同一问题的执行时间越短,算法的时间效率(xiàolǜ)就越高。⑤低存储量:解决同一问题的占用存储空间越少,算法的空间效率(xiàolǜ)就越高。2.影响算法运行时间的因素①计算机硬件;②实现算法的语言;③编译生成的目标代码的质量;④问题的规模:算法求解问题的输入量称为问题的规模,一般(yībān)用一个整数表示。在各种因素都不能确定的情况下,很难比较出算法的执行时间,即使用执行算法的绝对时