《算法竞赛入门经典第2版》题解目录索引

《算法竞赛入门经典第2版》题解目录索引

本文包含紫书的例题和习题分析题解的目录索引和一些建议

紫书刷题进行中,题解系列【GitHub|CSDN

OJ网址点这里


第3章

本章难度不高,可练习基本技巧,如输入输出格式,字符串处理,打表,STL使用,双指针,周期模型处理(循环节),对数降维等知识点,高手可跳过

书中编号题目编号标题(题解链接)分类备注
例题3-1UVA272Tex Quotes水题字符串处理
例题3-2UVA10082WERTYU水题打表
例题3-3UVA401Palindromes经典字符串处理,回文串/镜像串
例题3-4UVA340Master-Mind Hints 水题阅读理解,做差法
例题3-5UVA1583Digit Generator打表缩小范围,逆向构建哈希表
例题3-6UVA1584Circular Sequence水题字符串处理,string使用
习题3-1UVA1585Score水题计数
习题3-2UVA1586Molar mass水题字符串处理,精度控制
习题3-3UVA1225Digit Counting水题哈希表计数
习题3-4UVA455Periodic Strings水题周期串
习题3-5UVA227Puzzle简单模拟简单模拟,复杂输入输出
习题3-6UVA232Crossword Answers简单模拟字符串处理,坑人输出
习题3-7UVA1368DNA Consensus String简单模拟打表计数
习题3-8UVA202Repeating Decimals除法模拟循环节(周期串)
习题3-9UVA10340All in All子序列判定双指针/dp计数
习题3-10UVA1587Box长方体判定判定条件,STL
习题3-11UVA1588Kickdown双串匹配注意a,b相对位置
习题3-12UVA11809Floating-Point Numbers数学公式推导,对数降维,精度选择,打表

第4章

本章题目多为模拟思维题,包含STL灵活运用,熟悉常用数据结构,方向向量设置,用数组降低代码复杂度,位运算(bitset类),进制转换,浮点误差处理等等知识点,质量较高,建议都独立完成一遍,对编程能力提升有很大帮助

书中编号题目编号标题(题解链接)分类备注
例题4-1UVA1339Ancient Cipher思维题条件转换,sort,位置顺序不重要
例题4-2UVA489Hangman Judge简单模拟set去重
例题4-3UVA133The Dole Queue简单模拟约瑟夫环变种,模运算
例题4-4UVA213Message Decoding解码模拟字符串处理,进制转换
例题4-5UVA512Spreadsheet Tracking复杂模拟整体/单个模拟;结构体作Map的key;处理多行/列时,先处理大者
例题4-6UVA12412师兄帮帮忙复杂模拟数据结构设计,输出格式细心;查询优化
习题4-1UVA1589Xiangqi复杂模拟象棋方向向量,马脚处理,将军吃红子
习题4-2UVA201Squares中级模拟最长距离优化/类似前缀和
习题4-3UVA220Othello中级模拟棋盘方向模拟,直线判断
习题4-4UVA253Cube painting中级模拟推导思考,判定条件,轮换/基向量(顺序无关)
习题4-5UVA1590IP Networks中级模拟位运算,bitset,进制转换,字符串处理
习题4-6UVA508Morse Mismatches解密模拟逆向思维,题意不明,map
习题4-7UVA509RAID数组模拟RAID,进制转换,bitset,分块处理(cache)
习题4-8UVA12108Extraordinarily Tired Student状态模拟循环节判断(死循环处理)
习题4-9UVA1591Data Mining简单模拟公式推导,等差数列,移位溢出处理
习题4-10UVA815Flooded简单模拟sort,补面积做差,浮点误差(少用除法)

第5章

本章主要练习STL使用,熟练使用以下容器

  • 线性:vector,list,string
  • 关联:map,setunorder_map,unorder_set用于查询效率高)
  • 特殊:stack,queue,priority_queue
  • 算法:sort,lower_bound,find,

题目基本都不难,仔细读题,理清思路,字符串处理比较繁琐,细节处理很重要,刷题愉快!!!

写代码时先写框架,在大脑调试几遍保证框架正确性后在依次处理细节,bug较少,享受一遍AC快感~

书中编号题目编号标题(题解链接)分类备注
例题5-1UVA10474Where is the Marble水题sort,lowerbound/同分排名
例题5-2UVA101The Blocks Problem水题vector插入删除(删除顺序注意)
例题5-3UVA10815Andy’s First Dictionary水题set去重,字典序排列
例题5-4UVA156Ananagrams好题map,set;顺序无关-标准化:排序|计数
例题5-5UVA12096The SetStack Computer好题手动分配id(递归定义);集合交并算法;stack
例题5-6UVA540Team Queue好题双队列/二级索引/二维数组,读题
例题5-7UVA136Ugly Numbers数学丑数构造,优先队列
例题5-8UVA400Unix ls水题字符串处理,输出格式控制,按列输出
例题5-9UVA1592Database好题行列同素求解;map优化;stringstream分割字符串
例题5-10UVA207PGA Tour Prize Money待填坑
例题5-11UVA814The Letter Carrier’s Rounds中级模拟字符串处理;读题仔细(按输入顺序输出)
例题5-12UVA221Urban Elevations离散化sort,连续化离散分析
习题5-1UVA1593Alignment of Code水题字符串处理;stringstream分割;对齐宽度
习题5-2UVA1594Ducci Sequence水题set序列判重
习题5-3UVA10935Throwing cards away I水题queue模拟
习题5-4UVA10763Foreign Exchange水题映射(map/打表)
习题5-5UVA10391Compound Words水题set,string子串
习题5-6UVA1595Symmetry思考题对称性判断
习题5-7UVA12100Printer Queue简单模拟queue;map(类似优先队列)
习题5-8UVA230Borrowers中级模拟分级sort;set字典序排列;map分配id
习题5-9UVA1596Bug Hunt中级模拟字符串处理;数组表达式求值;map嵌套
习题5-10UVA1597Searching the Web搜索模拟字符串处理;搜索引擎原理;集合交并补
习题5-11UVA12504Updating a Dictionary简单模拟字符串处理;map;字符串分割
习题5-12UVA511Do You Know the Way to San Jose待填坑
习题5-13UVA822Queue and A待填坑
习题5-14UVA1598Exchange待填坑
习题5-15UVA12333Revenge of Fibonacci待填坑
习题5-16UVA212Use of Hospital Facilities待填坑

第6章

本章题目设计诸多数据结构

  • 线性表:栈,队列,链表(掌握基础的增删改查,灵活使用)
  • 关系结构:树和图(set,map底层均为树实现,最强大的关系描述模型)

同时涉及诸多技巧,如离散化,做差法,隐式建树(启发:做提前问问自己又没必要建立真正的数据结构,只用逻辑结构是否足以解决问题),这些东西只看是学不会的(排除天才:),循序渐进的挑战才会进步,因此,在分类栏中标记为好题,思维题,超好题的题目需重视,十分锻炼自身思维和编码能力,做好题的重要性不言而喻。

先享受分析问题的过程(脑力活),然后才是愉快的写代码(体力活);常分析,常总结,做题愉快!!!

例题

书中编号题目编号标题(题解链接)分类备注
例题6-1UVA210Concurrency Simulator中级模拟并发背景;双端队列;队列;map
例题6-2UVA514Rails简单模拟栈妙用(逆向思维)
例题6-3UVA442Matrix Chain Multiplication简单模拟矩阵链相乘(栈处理括号)
例题6-4UVA11988Broken Keyboard简单模拟list插入,遍历
例题6-5UVA12657Boxes in a Line优化技巧list插入,遍历;链表反转标记优化
例题6-6UVA679Dropping Balls规律优化完全二叉树,找规律,时空优化
例题6-7UVA122Trees on the level二叉树建立;层次遍历
例题6-8UVA548Tree中后序建树;dfs
例题6-9UVA839Not so Mobile先序建树,后序判断;隐式建树判断
例题6-10UVA699The Falling Leaves类似UVA839
例题6-11UVA297Quadtrees思维题四叉树转二维数组合并;隐式建树;空间换时间
例题6-12UVA572Oil Deposits图遍历dfs求连通块
例题6-13UVA1103Ancient Messages思维题不变特征量;双重dfs;分离连通块;
例题6-14UVA816Abbott’s Revengebug中bug中
例题6-15UVA10305Ordering Tasks拓扑排序queue;n!=0,m=0特例
例题6-16UVA10129Play on Words欧拉路径连通图判断(dfs/并查集);有向图欧拉路判定条件
例题6-17UVA10562Undraw the Trees思维题字符串解析/建树/先序–>数组直接递归输出(不建树)
例题6-18UVA12171Sculpture超好题离散技巧;逆向思维/作差法;floodfill(bfs);方向向量
例题6-19UVA1572Self-Assembly好题逆向思维;无限判定->图判环(dfs/bfs);哈希函数
例题6-20UVA1599Ideal Path好题双向bfs;边缓存优化;最短+字典序最小
例题6-21UVA506System Dependencies中级模拟字符串处理;命令处理;背景有实际意义
例题6-22UVA11853Paintball好题条件转换;逆向思维;连通块dfs;条件简化
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值