摘要: 题目描述 一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。 思路:记住位运算的基本操作,与或非,异或,异或是两个数相同则为0,不同为1,理解为加法运算。一定记住。 还有就是将计算机表示位数定为32位或者64位,这样就可以遍历数的每一位,看是否为1. 这一题 阅读全文
posted @ 2018-01-04 22:16 zqlucky 阅读(224) 评论(0) 推荐(0) 编辑
摘要: 题目描述 输入一棵二叉树,判断该二叉树是否是平衡二叉树。 思路: 这题是基于上一题的求二叉树的深度写出来的代码,记住二叉树的每次递归返回的是啥很关键, 这题自己理解的是调用helper函数返回高度,但是用了-1,只要不满足二叉树的要求就返回-1,这个函数是求高度的,本质还是按照写高度的那个函数那么写 阅读全文
posted @ 2018-01-04 21:14 zqlucky 阅读(110) 评论(0) 推荐(0) 编辑
摘要: 题目描述 输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。 思路: 1)递归方法:记住每次递归返回的是啥,这里返回的是该根节点对应的高度。 所以先找左节点的高度,和右节点的高度,然后两者的最大高度加上1就是答案。 /* stru 阅读全文
posted @ 2018-01-04 20:51 zqlucky 阅读(1621) 评论(0) 推荐(0) 编辑
摘要: 题目描述 统计一个数字在排序数组中出现的次数。 思路:记住二分搜索的复杂度是O(logn),复杂度的计算方式是主定理。二分搜索模板要记得。 这题要注意没有找到相关元素的返回情况,初始化的时候将两个位置初始化为-1,在最后判断以下,如果两个都是-1就是没有找到位置,这个时候就返回0,如果找到了就pos 阅读全文
posted @ 2018-01-04 20:29 zqlucky 阅读(163) 评论(0) 推荐(0) 编辑
只有注册用户登录后才能阅读该文。 阅读全文
posted @ 2018-01-04 20:23 zqlucky 阅读(59) 评论(0) 推荐(0) 编辑
摘要: 题目描述 输入两个链表,找出它们的第一个公共结点。 思路:这里首先理解一下暴力的方法,对于链表1的每一个节点,都去链表2中查找是否有该节点。 然后自己在思考的时候陷入了是否有环链表,这道题目不需要考虑是否有环,因为有环其实就是一个链表。 这题使用快慢指针,先得到两个链表的长度,定义两个头结点,哪个长 阅读全文
posted @ 2018-01-04 16:25 zqlucky 阅读(139) 评论(0) 推荐(0) 编辑