上一页 1 ··· 15 16 17 18 19 20 21 22 23 ··· 26 下一页
摘要: Tree Traversals Again Tree Traversals Again 这里的第一个tip就是注意到非递归中序遍历的过程中,进栈的顺序恰好是前序遍历的顺序,而出栈的顺序恰好是中序遍历的顺序。 第二个需要注意的就是如何根据中序遍历和前序遍历构建出一棵二叉树。 第三个是二叉树的后序遍历, 阅读全文
posted @ 2020-09-05 16:18 Garrett_Wale 阅读(118) 评论(0) 推荐(0) 编辑
摘要: Root of AVL Tree PAT-1066 这是关于AVL即二叉平衡查找树的基本操作,包括旋转和插入 这里的数据结构主要在原来的基础上加上节点的高度信息。 import java.util.*; /** * @Author WaleGarrett * @Date 2020/9/5 10:41 阅读全文
posted @ 2020-09-05 11:53 Garrett_Wale 阅读(139) 评论(0) 推荐(0) 编辑
摘要: Complete Binary Search Tree PAT-1064 本次因为涉及到完全二叉排序树,所以可以使用数组的形式来存储二叉排序树 对输入序列排序后,得到的是中序遍历二叉排序树的序列。对这颗二叉排序树进行中序遍历,将每个结点的值放入二叉树的存储数组中,最后遍历数组即可求出层次遍历的序列。 阅读全文
posted @ 2020-09-05 10:31 Garrett_Wale 阅读(126) 评论(0) 推荐(0) 编辑
摘要: Is It a Binary Search Tree PAT-1043 主要涉及到根据前序遍历序列片段是否是一颗二叉树,这里有一个小tip就是插入序列就是二叉树的前序遍历序列。 第二个是会对排序二叉树进行前序遍历,后序遍历,镜像排序二叉树的前序遍历,后序遍历等操作。 题目的整体难度不大,但是对二叉树 阅读全文
posted @ 2020-09-05 09:50 Garrett_Wale 阅读(128) 评论(0) 推荐(0) 编辑
摘要: scanf函数是通过指针指向变量的。 %f告诉scanf函数在所传地址位置上存储一个float型值, 而%lf告诉scanf函数在所传地址位置上存储一个double型值。 这里float和double的区别是非常重要的。 如果给出了错误的转换说明,那么scanf函数将可能存储错误的字节数量 (没有提 阅读全文
posted @ 2020-07-04 20:38 Garrett_Wale 阅读(4253) 评论(0) 推荐(0) 编辑
摘要: 试题E: RSA 解密 这里涉及到很多数论的知识:质因子分解,扩展欧几里得算法,快速幂算法,利用快速乘算法求解快速幂(mod太大导致不能直接乘,而是需要使用加法来替代乘法) 另外还需要注意扩展欧几里得算法求解出来的乘法逆可能是负数,所以需要使用公式进行转换。 #include<iostream> # 阅读全文
posted @ 2020-06-22 15:57 Garrett_Wale 阅读(868) 评论(0) 推荐(0) 编辑
摘要: #include <iostream> #include<algorithm> using namespace std; class Test { public: Test(int num) { this->num = num; } public: int num; }; //引用 void cha 阅读全文
posted @ 2020-05-30 10:30 Garrett_Wale 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 需要的头文件有 在主函数中使用StreamTokenizer和PrintWriter类 输入结束标志参数为 注意读入的时候要调用nextToken()函数,输出之后调用flush()函数,以hdu 1029为例 二、BufferedReader实现快速输入读一行 需要导入的jar 阅读全文
posted @ 2020-05-10 21:21 Garrett_Wale 阅读(297) 评论(0) 推荐(0) 编辑
摘要: Wormholes "POJ 3259" 这题是最短路问题中判断是否存在负圈的模板题。 判断负圈的一个关键就是理解:如果在图中不存在从s可达的负圈,最短路径不会经过一个顶点两次。while循环最多执行v 1次。 这题还需要注意的是输入的w条边的权值是负值,因为这是虫洞边。 阅读全文
posted @ 2020-05-10 17:26 Garrett_Wale 阅读(201) 评论(0) 推荐(0) 编辑
摘要: Currency Exchange "POJ 1860" 这题其实是最短路问题的变形,但是这里不用求解最短路,而是求解路径中是否存在正圈。如果存在正圈则说明兑换后的货币可以一直增加,否则不能实现通过货币转化来增加财富。 这和经典的使用Bellman Ford判断是否存在负权也有不同的地方,这里需要在 阅读全文
posted @ 2020-05-10 16:59 Garrett_Wale 阅读(387) 评论(0) 推荐(0) 编辑
摘要: Silver Cow Party "POJ 3268" 这题也是最短路的模板题,只不过需要进行两次求解最短路,因为涉及到来回的最短路之和。 该题的求解关键是:求解B A的最短路时,可以看做A是起点,这就和求解A B的最短路很类似了,只不过需要将单向路的距离调换一下即可。 JAVA: 阅读全文
posted @ 2020-05-09 21:50 Garrett_Wale 阅读(461) 评论(0) 推荐(0) 编辑
摘要: Heavy Transportation "POJ 1797" 这题是最短路题型的变形,该题不是求起点到终点的最短路,而是求路径中的最小边的最大值。 这题的求解思路是:将原来dijkstra中的松弛方程改一下,改成求最小边的最大值的松弛方程:d[j]=max(d[j],min(d[i],w[i][j 阅读全文
posted @ 2020-05-09 21:23 Garrett_Wale 阅读(494) 评论(0) 推荐(0) 编辑
摘要: Til the Cows Come Home "POJ 2387" 这题是最简单的最短路求解题,主要就是使用dijkstra算法,时间复杂度是$O(n^2)$. 需要注意的是,一定要看清楚题目的输入要求,是先输入边,再输入顶点,一开始我没看清,wrong answer了一次。 阅读全文
posted @ 2020-05-09 19:50 Garrett_Wale 阅读(198) 评论(0) 推荐(0) 编辑
摘要: 斐波那契数列 "PREV 29" 这题的难度很大,主要是题目中的要求数据量太大,1^18,这不管是运行时间会超时,而且累加的话也会超出long型的大小。 我采用多种方法来求解这道题目,逐步优化算法。 1. 基础解法:直接暴力求解斐波那契数列(得分:40) 我们深入考虑斐波那契的性质: 1.1 f(x 阅读全文
posted @ 2020-03-16 16:17 Garrett_Wale 阅读(380) 评论(0) 推荐(0) 编辑
摘要: 分巧克力 "PREV 37" 可以使用暴力来求解,但是1^10显然运行时间会超出1s的时间限制。 这里可以通过二分查找的方法来优化这次搜索。 阅读全文
posted @ 2020-03-15 23:12 Garrett_Wale 阅读(405) 评论(0) 推荐(0) 编辑
摘要: 包子凑数 "PREV 36" 这题首先需要知道不定方程的一些性质,即:ax+by=c的解的情况: 如果a,b互质,则一定有解且由无穷多个。若限制x,y =0,则ax+by=c有可能有负数解,即存在有限个c使得方程无正数解。且存在max{c|使方程无解的c}=a b a b; 如果a,b不互质,则可能 阅读全文
posted @ 2020-03-15 22:22 Garrett_Wale 阅读(287) 评论(0) 推荐(0) 编辑
摘要: 正则表达式 "PREV 35" 首先看到题目的要求是求解最长的字符串,一看到最长应该想到一般是使用深度优先搜索和动态规划。 本题中求解的是正则表达式,因为符号只有四种,而且括号可以嵌套,所以我们可以从递归的角度求解最长的长度。 当遇到的字符是左括号时,这个时候应该继续递归以等待右括号的出现,当遇到的 阅读全文
posted @ 2020-03-15 21:14 Garrett_Wale 阅读(248) 评论(0) 推荐(0) 编辑
摘要: 油漆面积 PREV-38 解法一:使用线段树和扫描线模板求解: 一个比较好的关于扫描线和线段树的总结模板:原文链接:https://blog.csdn.net/tomorrowtodie/article/details/52048323 问题:给出若干个矩形,(给的是矩形左上角和右下角坐标),求最后 阅读全文
posted @ 2020-03-14 20:28 Garrett_Wale 阅读(828) 评论(2) 推荐(1) 编辑
摘要: 分考场 "PREV 53" 这题的解决方法使用dfs,因为数据很小,才100. 每次当前的人人是否可以和前面的组队,设置两个数组group和fri 阅读全文
posted @ 2020-03-13 12:06 Garrett_Wale 阅读(210) 评论(0) 推荐(0) 编辑
摘要: 合根植物 "PREV 54" 这题主要考察的也是并查集。 直接应用并查集的模板就可以了。 阅读全文
posted @ 2020-03-13 11:12 Garrett_Wale 阅读(169) 评论(0) 推荐(0) 编辑
上一页 1 ··· 15 16 17 18 19 20 21 22 23 ··· 26 下一页