摘要: 题目 给定一个整型数组,找出主元素,它在数组中的出现次数严格大于数组元素个数的二分之一。 样例 给出数组[1,1,1,1,2,2,2],返回 1 思路 首先 发现所给的数组是顺序排列好的。 用动态规划的思路解决 可以把时间复杂度减小到O(n)空间复杂度O(1) C++代码 1 int majorit 阅读全文
posted @ 2016-05-04 13:45 红岸的电波 阅读(95) 评论(0) 推荐(0) 编辑
摘要: 题目 给一个词典,找出其中所有最长的单词。 样例 在词典 { "dog", "google", "facebook", "internationalization", "blabla" } 中, 最长的单词集合为 ["internationalization"] 在词典 { "like", "lov 阅读全文
posted @ 2016-05-04 12:43 红岸的电波 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 题目 翻转一棵二叉树 您在真实的面试中是否遇到过这个题? Yes 翻转一棵二叉树 翻转一棵二叉树 您在真实的面试中是否遇到过这个题? Yes Yes Yes 样例 1 1 / \ / \ 2 3 => 3 2 / \ 4 4和前序遍历代码很相似从叶子节点依次翻转递归到根节点C++代码 void in 阅读全文
posted @ 2016-05-04 01:23 红岸的电波 阅读(181) 评论(0) 推荐(0) 编辑
摘要: 题目 用插入排序对链表排序 样例 Given 1->3->2->0->null, return 0->1->2->3->null C++代码 ListNode *insertionSortList(ListNode *head) { // write your code here if (!head 阅读全文
posted @ 2016-05-03 23:07 红岸的电波 阅读(214) 评论(0) 推荐(0) 编辑
摘要: 题目 检查两棵二叉树是否等价。等价的意思是说,首先两棵二叉树必须拥有相同的结构,并且每个对应位置上的节点上的数都相等。 样例 1 1 / \ / \ 2 2 and 2 2 / / 4 4 就是两棵等价的二叉树。 1 1 / \ / \ 2 3 and 2 3 / \ 4 4 就不是等价的。 C++ 阅读全文
posted @ 2016-05-03 09:48 红岸的电波 阅读(122) 评论(0) 推荐(0) 编辑
摘要: 题目 写一个算法来判断一个数是不是"快乐数"。 一个数是不是快乐是这么定义的:对于一个正整数,每一次将该数替换为他每个位置上的数字的平方和,然后重复这个过程直到这个数变为1,或是无限循环但始终变不到1。如果可以变为1,那么这个数就是快乐数。 样例 19 就是一个快乐数。 1^2 + 9^2 = 82 阅读全文
posted @ 2016-05-03 01:21 红岸的电波 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 题目 如果要将整数A转换为B,需要改变多少个bit位? 如把31转换为14,需要改变2个bit位。 (31)10=(11111)2 (14)10=(01110)2 思路 要考虑负数的问题 如果 一正一负 将他们去全部变成正数 后要+1个符号为的变化 都是负数 只要变成正数进行比较就行了 C++代码 阅读全文
posted @ 2016-05-03 00:42 红岸的电波 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 题目 将一棵二叉树按照前序遍历拆解成为一个假链表。所谓的假链表是说,用二叉树的 right 指针,来表示链表中的 next 指针。 样例 1 \ 1 2 / \ \ 2 5 => 3 / \ \ \ 3 4 6 4 \ 5 \ 6思路left = root->left;right = root->r 阅读全文
posted @ 2016-05-03 00:22 红岸的电波 阅读(487) 评论(0) 推荐(0) 编辑
摘要: 题目 给定一个排序的整数数组(升序)和一个要查找的整数target,用O(logn)的时间查找到target第一次出现的下标(从0开始),如果target不存在于数组中,返回-1。 样例 在数组 [1, 2, 3, 3, 4, 5, 10] 中二分查找3,返回2。 思路 二分查找 找3,返回为2/3 阅读全文
posted @ 2016-05-02 13:07 红岸的电波 阅读(124) 评论(0) 推荐(0) 编辑
摘要: 题目 给定一个单链表中的表头和一个等待被删除的节点(非表头或表尾)。请在在O(1)时间复杂度删除该链表节点。并在删除该节点后,返回表头。 思路 因为O(1)内删除所以 不能从头节点去遍历找他的前驱节点 因为给的是待删除节点, 所以如果删除下一个节点可以在o(1)复杂度完成 所以 把当前节点覆盖成下一 阅读全文
posted @ 2016-05-02 12:11 红岸的电波 阅读(287) 评论(0) 推荐(0) 编辑