摘要: 112题目如下: Given a binary tree and a sum, determine if the tree has a root-to-leaf path such that adding up all the values along the path equals the giv 阅读全文
posted @ 2016-07-31 15:54 gremount 阅读(149) 评论(0) 推荐(0) 编辑
摘要: Implement atoi to convert a string to an integer. 题目分析: 题目本身很简单就是将一个字符串转化成一个整数,但是由于字符串的千差万别,导致在实现的时候细节非常多。需要注意的有以下一些: 1.字符串可能由一些空格开始,然后遇到一个正号或者负号,然后是正 阅读全文
posted @ 2016-03-07 23:15 gremount 阅读(196) 评论(0) 推荐(0) 编辑
摘要: leetcode网站原题如下:给一个非负数组,开始位置是下标为0的元素,数组的元素代表当前位置最多向前行进多少个位置,判断是否能到达数组的最后一个位置,能就回复true,不能就回复false. Given an array of non-negative integers, you are init 阅读全文
posted @ 2015-12-06 11:31 gremount 阅读(134) 评论(0) 推荐(0) 编辑
摘要: 题目:算出二叉树的最大深度 解决方案:(1)BFS (2)DFS (1)BFS 一层一层往下搜索,一直找到最深的点,这里由于节点的val是没有用的,所以可以用来存储当前节点的深度,然后注意指针一定要初始化,不然在leetcode里可能会出现runtime error /** * Definition 阅读全文
posted @ 2015-11-14 21:18 gremount 阅读(118) 评论(0) 推荐(0) 编辑
摘要: try块是什么?一个try块就是程序尝试去执行一段代码,try块后面会有几个异常处理块,如果try块中发生了异常,程序执行流就会进入相应的异常处理块中。以下程序会帮助理解这个概念#includeusing namespace std;int main(){ int a=1; ... 阅读全文
posted @ 2015-11-06 22:54 gremount 阅读(329) 评论(0) 推荐(0) 编辑
摘要: C++的面向对象的Dijkstra写法面向对象特点的充分使用清晰的逻辑简洁的图输入程序面向对象特点的充分使用清晰明确的类实现 class Edge(边的实现) class Req (路由请求的实现) class Graph (图的实现) 其中将Dijkstra算法放置在Graph里... 阅读全文
posted @ 2015-11-06 22:24 gremount 阅读(300) 评论(0) 推荐(0) 编辑
摘要: Sollin算法可以看作是Kruskal算法和Prim算法的综合 基本思想是: 1. 从所有节点都孤立的森林开始,通过合并树来得到最小生成树 2. 每次合并树的边都是用最小权重的割边 程序具体实现思路: 初始化,update所有点(update函数只在开始处使用一次,以后就不用了)(upda... 阅读全文
posted @ 2015-01-23 19:42 gremount 阅读(690) 评论(0) 推荐(0) 编辑
摘要: Radix Heap 算法是在Dijkstra的Dial实现的基础上,通过减少对桶的使用,来优化算法的时间复杂度: Dial 时间复杂度是O(m+nC) -------C是最长的链路 Radix Heap 时间复杂度是O(m+n*log(nC)) 本质上来说Radix Heap是Dial... 阅读全文
posted @ 2014-11-29 23:08 gremount 阅读(376) 评论(0) 推荐(0) 编辑
摘要: Problem 1: 两个烧杯,一个放糖一个放盐,用勺子舀一勺糖到盐,搅拌均匀,然后舀一勺混合物会放糖的烧杯,问你两个烧杯哪个杂质多? 提示:相同。(1)可以用一个特殊数据计算一下,可以得到两个烧杯里的sugar和salt含量是一样的; (2)假设杂质不等,那么将杂质放回原杯中,则杯中物... 阅读全文
posted @ 2014-04-05 16:05 gremount 阅读(268) 评论(0) 推荐(0) 编辑
摘要: 3.7题 3.21题 1.给定能随机生成整数 1 到 5 的函数,写出能随机生成整数 1 到 7 的函数。 提示:两个random就可以有25种可能,每种可能都是等概率的 2.判断一个自然数是否是某个数的平方,不能使用开方运算。 提示:(1)使用二分查找法,对1到N之间的数字进行... 阅读全文
posted @ 2014-04-05 12:39 gremount 阅读(333) 评论(0) 推荐(0) 编辑