剑指Offer
筑梦悠然
The running of life depends on the perseverance in the journey, rather than momentary outburst.
人生的奔跑,不在于瞬间的爆发,而取决于途中的坚持!
展开
-
字符串转换成整数-微软面试题
思路:每扫描到一个字符,我们把在之前得到的数字乘以10再加上当前字符表示的数字。特殊处理:1、 整数可能不仅仅只含有数字,还有可能以’+’或者’-‘开头,表示整数的正负。2、 非法输入。由于输入的是指针,在使用指针之前,我们要做的第一件是判断这个指针是不是为空。如果试着去访问空指针,将不可避免地导致程序崩溃。另外,输入的字符串中可能含有不是数字的字符。每当碰到这些非法的字符,我们就没有原创 2017-08-14 00:17:03 · 412 阅读 · 0 评论 -
旋转数组中的最小数字
思路:递增序列。旋转数组中,由于是把递增排序数组前面若干个数字搬到数组后面,一次第一个数字总是大于等于最后一个数字。(1)一个特例,如果把排序树组的前面0个元素搬到最后面,即排序数组本身,此时数组中的最后一个数组就是最小的数字,所以在以下代码中,把mid初始化为start,一旦发现数组中第一个数字小于最后一个数字,表名该数组是排序的,直接返回第一个数字。(2)#includeus原创 2017-08-21 14:46:29 · 246 阅读 · 0 评论 -
[面试]红黑树性质,BST(二叉搜索树)、AVL(平衡二叉搜索树)、RBT(红黑树)、B-Tree(B-树和B+树)
转自:http://www.iteye.com/topic/614070一、红黑树性质5个:性质1. 节点是红色或黑色。性质2. 根是黑色。性质3. 所有叶子都是黑色(叶子是NIL节点)。性质4. 每个红色节点的两个子节点都是黑色。(从每个叶子到根的所有路径上不能有两个连续的红色节点)性质5. 从任一节点到其每个叶子的所有简单路径 都包含相同数目的黑色节点。二、原创 2017-11-14 16:14:06 · 891 阅读 · 0 评论 -
[面试] BFS、Dijstra、SPFA、Floyd求最短路的比较
求解方向算法类型时间复杂度BFS求无权图的单源最短路/求树的层序遍历(循环队列)暴力搜索O(V+E),与边有关。最坏的情况就是这个图是完全图,无向完全图有个公式是E = V*(V-1)/2,V=100,则E=10^4,主要由边决定Dijstra求带权图的单源最短路(非负权,不可判断是否回原创 2017-11-14 23:36:54 · 1496 阅读 · 0 评论 -
[360面试题2018]:一个数组a[0...n-1],求a[j]-a[i]的最大值+求a[i]-a[j]的最大值,其中i<j
一、一个数组a[0...n-1],求a[j]-a[i]的最大值,其中i===>两个变量:当前最小值min和当前最大差值maxdiff。遍历一遍数组,更新这两个变量#includeusing namespace std;int main(){ //int arr[]={12,-10,3,6,4,-1,5,8,6,7,10}; int n; cin>>n;原创 2018-03-21 19:12:13 · 3961 阅读 · 0 评论