[Lc]面试题10_II青蛙跳台阶问题 2020-05-11 剑指offer 题目 题解 这题与70题一样,详见70题题解,因为要取模,因此通项公式法无法通过,递推公式法也太慢通过不了,其分析详见70题题解,这里贴一个递推 Read more...
[Lc]509斐波那契数 2020-05-11 leetcode 题目 题解 这题和爬楼梯是一样的,这题与剑指offer10一样,三种方法 1. 递归 这个方法最慢,因为有大量的重复运算,写法最简单,就不写了 时间复杂度 Read more...
[Lc]面试题10_I斐波那契数列 2020-05-11 剑指offer 题目 题解 这题与[lc]509一样,区别在于结果需要取余,而对于最终结果取余和对于每一位取余再计算下一个数字答案是一样的。具体分析见(http Read more...
[Lc]面试题09用两个栈实现队列 2020-05-10 剑指offer 题目 题解 腾讯的客户端开发就是面的这个。。。,当时还想了半天幸苦想出来了,可惜还是凉 //Your CQueue object will be instantiated and called as such: CQueue* obj = new CQueue(); bj->appendTail(value); int param_2 = obj->deleteHead(); 1. 快存慢取 这个方法 Read more...
[Lc]105从前序与中序遍历序列构造二叉树 2020-05-10 leetcode 题解 题解 二叉树结构如下: //Definition for a binary tree node. struct TreeNode { int val; TreeNode *left; TreeNode *right; TreeNode(int x) : val(x), left(NULL), right(NULL) {} }; 递归,先序的首字母是根节点,而中序的根节点区分左右子树,利用这个性质递 Read more...
[Lc]面试题07重建二叉树 2020-05-10 剑指offer 题目 注意:本题与主站 105 题重复:(https://leetcode-cn.com/problems/construct-binary-tree Read more...
[Lc]面试题06从尾到头打印链表 2020-05-10 剑指offer 题目 题解 //Definition for singly-linked list. struct ListNode { int val; ListNode *next; ListNode(int x) : val(x), next(NULL) {} }; 1. 栈 从头到尾遍历链表,先取数入栈,再从栈中弹出放入数组 时间复杂度$O(n)$,遍历一次数组一次栈 Read more...
[Lc]面试题05替换空格 2020-05-09 剑指offer 题目 题解 1. 双指针法 先统计空格个数,然后扩容,然后用双指针挨个从前往后复制数据,不需要额外空间 时间复杂度$O(n)$,遍历两遍 空间复杂度$O( Read more...
[Lc]74搜索二维矩阵 2020-05-09 leetcode 题目 题解 稍微变形的二分查找,其实写法是一样的,主要就是在取mid的时候需要转化一下,开始取二分查找最初的left和right也要注意,还有二 Read more...
[Lc]240搜索二维矩阵II 2020-05-09 leetcode 题目 题解 可以一行一行的二分查找,但是比较慢,也没有利用这道题矩阵的性质 确定起点很重要,由于这道题矩阵的特殊形式,我们可以将起点定在右上(或者 Read more...