小苏子
小苏子PDF在线图书

算法笔记 上机训练实战指南 作者:胡凡,曾磊

算法笔记 上机训练实战指南 作者:胡凡,曾磊

算法笔记 上机训练实战指南 出版社: 机械工业出版社

算法笔记 上机训练实战指南 内容简介

算法笔记 上机训练实战指南 目录

算法笔记 上机训练实战指南 精彩文摘

《算法笔记上机训练实战指南》是《算法笔记》的配套习题集,内容按照《算法笔记》的章节顺序进行编排,其中整理归类了PAT甲级、乙级共150多道题的详细题解,大部分题解均编有题意、样例解释、思路、注意点、参考代码,且代码中包含了详细的注释。读者可以通过本书对《算法笔记》的知识点进行更深入的学习和理解。书中印有大量二维码,用以实时更新或补充书籍的内容及发布本书的勘误。《算法笔记上机训练实战指南》可作为计算机专业研究生入学考试复试上机、各类算法等级考试(如PAT、CSP等)的辅导书,也可作为考研时“数据结构”科目的教材及辅导书内容的补充。本书还是学习C语言、数据结构与算法的入门辅导书,非常适合零基础的学习者对经典算法进行学习。前言第1章本书的使用方法第2章C/C++快速入门2.1基本数据类型2.2顺序结构2.3条件结构2.4循环结构2.5数组2.6函数2.7指针2.8结构体(struct)的使用2.9补充2.10黑盒测试第3章入门篇(1)—入门模拟3.1简单模拟3.2查找元素3.3图形输出3.4日期处理3.5进制转换3.6字符串处理第4章入门篇(2)—算法初步4.1排序4.2散列4.3递归4.4贪心4.5二分4.6twopomters4.7其他高效技巧与算法第5章入门篇(3)——数学问题5.1简单数学5.2最大公约数与最小公倍数5.3分数的四则运算5.4素数5.5质因子分解5.6大整数运算5.7扩展欧几里得算法5.8组合数第6章C++标准模板库(STL)介绍6.1vector的常见用法详解6.2set的常见用法详解6.3string的常见用法详解6.4map的常见用法详解6.5queue的常见用法详解6.6priority_queue的常见用法详解6.7stack的常见用法详解6.8pair的常见用法详解6.9algorithm头文件下常用函数介绍第7章提高篇(1)—数据结构专题(1)7.1栈的应用7.2队列的应用7.3链表处理第8章提高篇(2)—搜索专题8.1深度优先搜索(DFS)8.2广度优先搜索(BFS)第9章提高篇(3)—数据结构专题(2)9.1树与二叉树9.2二叉树的遍历9.3树的遍历9.4二叉查找树(BST)9.5平衡二叉树(AVL树)9.6并查集9.7堆9.8赫夫曼树第10章提高篇(4)—图算法专题10.1图的定义和相关术语10.2图的存储10.3图的遍历10.4最短路径10.5最小生成树10.6拓扑排序10.7关键路径11章提高篇(5)—动态规划专题11.1动态规划的递归写法和递推写法11.2最大连续子序列和11.3最长不下降子序列(LIS)11.4最长公共子序列(LCS)11.5最长回文子串11.6DAG最长路11.7背包问题11.8总结第12章提高篇(6)——字符串专题12.1字符串hash12.2KMP算法第13章专题扩展13.1分块思想13.2树状数组13.3快乐模拟附录思路步骤1:整体思路是将数字按字符串方式处理,并设置下标left和right来处理数字的每一个节(个节、万节、亿节)的输出,即令left指向当前需要输出的位,而right指向与left同节的个位。步骤2:在需要输出的某个节中,需要解决的问题是如何处理额外发音的零。事实上,可以直接采用规则①中的表述来设计如下的算法:设置bool型变量flag表示当前是否存在累积的零。当输出left指向的位之前,先判断该位是否为0:如果为0,则令flag为true,表示存在累积的零;如果非0,则根据flag的值来判断是否需要输出额外的零。在这之后,就可以输出该位本身以及该位对应的位号(十、百、千)。而当整一小节处理完毕后,再输出万或者亿。注意点①边界数据O的输出应该为“ling”。编者采用的处理方法是在步骤2判断当前位是否为0时增加判断当前位是否为首位,只有当前位不是首位且为O时才令flag为true(详见代码)。当然,读者也可以采用在程序读入数据后直接特殊判断的方法进行输出。

赞(0)
未经允许不得转载:小苏子图书 » 算法笔记 上机训练实战指南 作者:胡凡,曾磊