剑指offer
DreamhighMacy
计算机方面学生,即将进入工作
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
剑指offer—写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。
分析:实现两个是相加不用四则运算,根据计算机中的运算不用四则运算那么肯定是位运算了。(以下分析来自剑指offer)比如我们计算5+17=22这个结果,世界上,我们可以分为3个步骤计算,第一步各位数相加不进位,此时的结果是12(个位相加不进位是2,十位相加是1),所以结果是12; 第二步做进位,5+7有进位,进位值是10;第三步是把前两步计算结果加起来。12 + 10 = 22.那么运用位运算二进制的转载 2017-07-24 17:09:56 · 2706 阅读 · 0 评论 -
剑指offer-二叉树搜索与双向链表
题目:输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。解题思路:二叉树的中序遍历,左、根、右;因为二叉搜索树的中序遍历就是递增排列的,所以只要在中序遍历时将每个结点放入vector中,再分别为每个结点的左右指针赋值即可。 采用中序遍历: 修改中序遍历,在其中加入一个前驱结点 遍历左子树 当前结点指向左指针指向前驱结点 前驱结原创 2017-07-27 20:20:37 · 521 阅读 · 0 评论
分享