数据结构与算法
节选
[
《数据结构与算法》内容简介:计算机在各个领域的应用过程中,都会涉及数据的组织与程序的编排等问题,都会用到各种各样的数据结构,选择*合适的数据结构和存储表示方法,以及编制相应的实现算法的方法是计算机工作者不可缺少的知识。《数据结构与算法》根据计算机科学与技术专业规范的要求,全面、系统地介绍各种类型的、*常用的数据结构及常用的算法。全书分上、下两篇,上篇数据结构,下篇算法设计与分析。在数据结构中,讨论了4大类型数据结构的逻辑特性、存储表示及其应用。在算法设计中着重阐述典型算法的设计与分析。每一章后都配有适量的习题,以供读者练习。概念清楚,内容丰富,详略得当,既可以作为高等院校计算机应用本科等层次的教材,也可以供从事计算机工程与应用的科技工作者参考或自学。
]
相关资料
[
插图:分治法求解较大规模的问题时,先简化问题规模,把该问题分解成几个子问题,最终通过子问题的解获得原问题的解。在分解问题的过程中采用的是自顶向下的方法,将大问题分割成独立的子问题,再对子问题递归分解,最终通过最小子问题的解层层合并,最终获得原问题的解。反之,如果在求解过程中采用自底向上的方法,先求出最小规模子问题的解,向上逐步扩大问题的规模,最终获得原问题的解,这样的处理过程就引出了动态规划法。动态规划法主要是针对最优化问题采用的一种算法。其基本思想是,把求解的问题分成许多阶段或多个子问题,然后按顺序求解各个子问题。前一子问题的解,为后一子问题的求解提供了有用的信息。在求解任意子问题时,列出各种可能的局部解,通过决策保留那些有可能达到最优的局部解,丢弃其他局部解。依次解决各子问题,最后一个子问题就是初始问题的解。可以看出,动态规划法是对多阶段决策过程的求解,它的决策不是线性的,而是全面考虑各种不同的情况分阶段作出决策。每一阶段的决策都会使问题的规模和状态发生变化,而决策序列就是在这种变化的状态中产生出来的,因此称之为“动态”的。这种解决多阶段决策最优化的过程称为动态规划法。数据结构中用于计算有向图传递闭包的warshall算法、计算完全最短路径的Floyed算法、最优二叉查找树等,数学应用中的矩阵乘积问题、复杂工程问题的多种应用如资源分配问题、前面介绍过的0/1背包问题、货郎担问题、作业调度问题等都可以通过动态规划法获得最优解。那么到底哪些问题适用于动态规划法呢?如果原问题能分解为独立子问题,用分治法较为简单方便。当子问题不独立时,则采用动态规划法。通常,能用动态规划法解决的问题应该具有下面三个性质:1)最优化子结构如果问题的最优解所包含的子问题也是最优的,称该问题具有最优子结构,满足最优化原理。2)无后向性某阶段状态一旦确定,不受这个状态以后决策的影响,即某状态以后的过程不会影响以前的状态,只与当前状态有关。3)子问题重叠子问题之间不独立,一个子问题在下一阶段决策中可能被多次使用到。该性质不是动态规划适用的必要条件,但如果该性质无法满足,动态规划法解决相应问题的优势将不复存在。
]
本书特色
[
《数据结构与算法》:高等学校教材·计算机教学丛书。
]
内容简介
[
计算机在各个领域的应用过程中,都会涉及数据的组织与程序的编排等问题,都会用到各种各样的数据结构,选择*合适的数据结构和存储表示方法,以及编制相应的实现算法的方法是计算机工作者不可缺少的知识。本书根据计算机科学与技术专业规范的要求,全面、系统地介绍各种类型的、*常用的数据结构及常用的算法。全书分上、下两篇,上篇数据结构,下篇算法设计与分析。在数据结构中,讨论了4大类型数据结构的逻辑特性、存储表示及其应用。在算法设计中着重阐述典型算法的设计与分析。每一章后都配有适量的习题,以供读者练习。概念清楚,内容丰富,详略得当,既可以作为高等院校计算机应用本科等层次的教材,也可以供从事计算机工程与应用的科技工作者参考或自学。
]
目录
第1章 绪论上篇 数据结构 第2章 线性表 第3章 栈和队列 第4章 串和数组 第5章 二叉树和树 第6章 图和广义表 第7章 排 序 第8章 查 找 第9章 文 件下篇 算法分析 第10章 蛮力法 第11章 贪心法 第12章 分治法 第13章 动态规划法
封面
书名:数据结构与算法
作者:于晓敏
页数:265
定价:¥29.0
出版社:北京航空航天大学出版社
出版日期:2010-09-01
ISBN:9787512401846
PDF电子书大小:63MB 高清扫描完整版
本文标题:《数据结构与算法》PDF下载
资源仅供学习参考,禁止用于商业用途,请在下载后24小时内删除!