随笔分类 - PTA
PTA算法题记录
    
摘要:知识点: 根据前序遍历和中序遍历还原二叉树 给定一棵二叉树的先序遍历序列和中序遍历序列,要求计算该二叉树的高度。 根据二叉树的性质,如果我们只给出二叉树的一种遍历方式的结果,不能完全确定一颗二叉树,这时的二叉树可能具有多种形态。但是当我们给出一颗二叉树的两种不同遍历方式的时候,就可以完全确定一颗二叉
        阅读全文
                
摘要:本题考点:采用堆栈模拟队列 [toc] 设已知有两个堆栈S1和S2,请用这两个堆栈模拟出一个队列Q。 所谓用堆栈模拟队列,实际上就是通过调用堆栈的下列操作函数: :判断堆栈 是否已满,返回1或0; :判断堆栈 是否为空,返回1或0; :将元素 压入堆栈 ; :删除并返回 的栈顶元素。 实现队列的操作
        阅读全文
                
摘要:本题考点: 前缀表达式递归求值 算术表达式有前缀表示法、中缀表示法和后缀表示法等形式。前缀表达式指二元运算符位于两个运算数之前,例如2+3 (7 4)+8/4的前缀表达式是:+ + 2 3 7 4 / 8 4。请设计程序计算前缀表达式的结果值。 我们先来了解一下前缀表达式: 前缀表达式也称逆波兰表达
        阅读全文
                
摘要:本题考点:中缀表达式转后缀表达式。 难点: 1. 带有小数的数字 2. 数字可能带有正负号 题目描述: 算术表达式有前缀表示法、中缀表示法和后缀表示法等形式。日常使用的算术表达式是采用中缀表示法,即二元运算符位于两个运算数中间。请设计程序将中缀表达式转换为后缀表达式。 本题的测试点如下: | 输入 
        阅读全文
                
摘要:这个题是归并排序的一个简单应用,只需要掌握好归并排序的思想,代码很容易写出。 设某银行有A、B两个业务窗口,且处理业务的速度不一样,其中A窗口处理速度是B窗口的2倍 —— 即当A窗口每处理完2个顾客时,B窗口处理完1个顾客。给定到达银行的顾客序列,请按业务完成的顺序输出顾客序列。假定不考虑顾客先后到
        阅读全文
                
摘要:汉诺塔问题的非递归实现及其思考 [toc] 有关问题的递归实现和非递归实现其实是我们理解计算机,或者说编程语言中关于函数调用的方式最好的方式之一,它让我们知道了某种编程语言在实现函数调用的方式,也是计算机进程切换的一种思想的体现。 我们先来说说汉诺塔问题: 汉诺塔问题是一个经典的问题。 汉诺塔(Ha
        阅读全文
                
摘要:[TOC] 之所以把 7 8,7 9,7 10 放到一起,是因为这三个题都是非常经典的图算法,在之前总结的算法笔记中已经提到过,这里只是做一个复习,所以整理到一起。 发现自己的记忆力是真的不行,还是需要勤加努力多认真学习才能把这些算法都掌握住。 7 9 哈利波特的考试 这道 "题目" 是想考 全局最
        阅读全文
                
摘要:本题考查点: 图的遍历方式 题目描述 “六度空间”理论又称作“六度分隔(Six Degrees of Separation)”理论。这个理论可以通俗地阐述为:“你和任何一个陌生人之间所间隔的人不会超过六个,也就是说,最多通过五个人你就能够认识任何一个陌生人。”如图1所示。 图1 六度空间示意图 “六
        阅读全文
                
摘要:本题考查点: 图的并查集 图的 BFS 和 DFS 题目描述: 给定一个有 N 个顶点和 E 条边的无向图,请用DFS和BFS分别列出其所有的连通集。假设顶点从0到 N −1编号。进行搜索时,假设我们总是从编号最小的顶点出发,按编号递增的顺序访问邻接点。 输入格式: 输入第1行给出2个整数 N (0
        阅读全文
                
摘要:本题主要考察堆的性质(建堆,向堆中插入数据)。 将一系列给定数字插入一个初始为空的小顶堆 。随后对任意给定的下标 ,打印从 到根结点的路径。 输入格式: 每组测试第1行包含2个正整数 N 和 M (≤1000),分别是插入元素的个数、以及需要打印的路径条数。下一行给出区间[ 10000, 10000
        阅读全文
                
摘要:总体思路:采用先序遍历的方式来进行比较即可。(静态树) 题目描述: 给定一个插入序列就可以唯一确定一棵二叉搜索树。然而,一棵给定的二叉搜索树却可以由多种不同的插入序列得到。例如分别按照序列{2, 1, 3}和{2, 3, 1}插入初始为空的二叉搜索树,都得到一样的结果。于是对于输入的各种插入序列,你
        阅读全文
                
摘要:题目描述: 给定两棵树T1和T2。如果T1可以通过若干次左右孩子互换就变成T2,则我们称两棵树是“同构”的。例如图1给出的两棵树就是同构的,因为我们把其中一棵树的结点A、B、G的左右孩子互换后,就得到另外一棵树。而图2就不是同构的。 现在给定两棵树,请你判断是否是同构的。 很惭愧,这个题目做的很复杂
        阅读全文
                
摘要:本体的思路就是模拟多项式的乘法,题目描述如下: 7 2 设计函数分别求两个一元多项式的乘积与和。 输入格式: 输入分2行,每行分别先给出多项式非零项的个数,再以指数递降方式输入一个多项式非零项系数和指数(绝对值均为不超过1000的整数)。数字间以空格分隔。 输出格式: 输出分2行,分别以指数递降方式
        阅读全文
                
摘要:为什么要开始记录刷题笔记呢? 因为发现自己经常在做完很多题目之后并没有总结和反思,所以才会忘得很快,所以从现在开始把所有值得记录的东西,经过自己思考的东西都记录下来,写成博客。 题目: 给定 K 个整数组成的序列{ N 1, N 2, ..., N K },“连续子列”被定义为{ N i , N i
        阅读全文
                
 
                    
                     
                    
                 
                    
                
 
         浙公网安备 33010602011771号
浙公网安备 33010602011771号