分析问题 任何一个数字异或它自己都等于0,通过这个思想遍历数组,用一个result累计异或操作,如果遇到某一个数两次,必定消除了异或操作,换句话说就是如果我们从头依…
分类:剑指offer
剑指offer解题报告(Java版)——二叉树的深度 判断二叉树是否平衡 38
问题一 引言 在之前我们讲到过如果保存树根节点到叶子节点之间的路径,其中包含了如何判断一个节点是否是叶子节点,而且用栈保存了路径中的节点…
剑指offer解题报告(Java版)——找到两个链表的第一个公共节点 37
引言 这个问题一种常想到的方法就是两层循环遍历,外层循环遍历链表A,对A中每个节点,遍历链表B,如果在B中找到,说明这个节点是第一个公共节点,但是这样的方法时间复杂…
剑指offer解题报告(Java版)——求逆序对 36
引言 一开始接触到这题还觉得挺有意思的,但后来发现其深层次的含义就是一个归并排序,只是在归并排序的过程中做了一点小动作而已,这也再次证明了很多东西都是万变不离其宗的…
剑指offer解题报告(Java版)——二叉树中和为某一值的路径 25
分析问题 首先需要明白路径的概念,路径是从根节点出发,一直到叶子节点,所形成的一条路径 所以我们寻找和为某一…
剑指offer解题报告(Java版)——判断一个数组是否是二叉搜索树的后序遍历序列 24
引言 继续二叉树,这个题考的知识点是二叉树的后续遍历 分析问题 对于一个二叉树的后序遍历序列来说,最后一个数一定是根节点,然后前面的数中…
剑指offer解题报告(Java版)——二叉树的镜像 19
引言 发现二叉树的问题很多都是用递归解决的,除了按照剑指offer书中给的递归方法,自己也用栈的方法去实现了,两种方法其实深层次的思想差不多 分析问题 …
剑指offer解题报告(Java版)——树的子结构 18
引言 继续二叉树的狂轰乱炸,这道题很简单,就是一个二叉树的递归问题 分析问题 要判断树B是否为树A的子结构,…
剑指offer解题报告(Java版)——二叉搜索树转换为双向链表 27
引言 自己觉得对二叉树了解的不是很多,所以想专门练习一下这方面的问题,剑指Offer中有一道题是将二叉搜索树转换为双向链表,开始的时候照着书上的思路去做,最后发现问…
O(1)时间删除链表中的节点 13
将当下一个节点的data和nextNode拷贝到当前节点,即完成删除 但不能用deleteNode=deleteNode.nextNode 这样是让指针循环下移 &…
打印1到最大的n位数 12
两种解法,一种递归,一种判断该数加1是否最高位进1 第二种较简单 主要两个函数,一个是打印数字,要求判断该数字是否是第一个不为零的数字,然后后面的依次打出即可 &n…
自己实现一个数的整数次方 11
注意输入的判断,多写几个if语句判断是否满足输入数据的条件 另外exp为负的时候,输入的base变为1.0/base而不是1/base 所以返回值要设置为doubl…