![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
剑指offer
嘘の夢
这个作者很懒,什么都没留下…
展开
-
【剑指offer】链表中倒数第k个结点
题目链接 牛客网 题目描述 输入一个链表,输出该链表中倒数第k个结点。 第一种方法:遍历一遍,获取链表元素个数,然后再遍历一遍,返回结点 public class Solution { public ListNode FindKthToTail(ListNode head,int k) { if (head == null) return head...原创 2020-02-18 23:43:08 · 88 阅读 · 0 评论 -
【剑指offer】变态跳台阶
题目链接 牛客网 题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 若 n = 1,有1中可能 若 n = 2 第一次跳 1 级:剩下1级,有 1 种可能 第一次跳 1 级:直接到达,有 1 种可能 共 2 种。 若 n = 3 第一次跳 1 级:剩下2级,有 f(2) 种可能 第一次跳 2 级:剩下1级,有 f(1)...原创 2020-02-18 22:00:47 · 84 阅读 · 0 评论 -
【剑指offer】跳台阶
题目链接 牛客网 题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。 记 n 与种数的关系为 f(n) n = 1时,f(1) = 1; n = 2 时,可以选择第一次跳一个台阶,跳两次,也可以一次跳上去。f(2) = 2; n = 3 时,第一次跳一级,有 f(2) 种,第一次跳2级,有 f(1) 种; n = i ...原创 2020-02-18 21:23:17 · 174 阅读 · 1 评论 -
【剑指offer】斐波那契数列
题目链接 牛客网 题目描述 求斐波那契数列的第 n 项,n <= 39(第0 项为 0)。 斐波那契数列的 前几项为 1, 1, 2, 3, 5, 8…,可以看出斐波那契数列的通项公式为: f(n) = n, (n < 2) f(n) = f(n - 1) + f(n - 2) ,(n >= 2) 递归法 public int Fibonacci(int n) { ...原创 2020-02-18 20:51:08 · 71 阅读 · 0 评论 -
【剑指offer】二维数组中的查找
题目链接 牛客网 题目描述 给定一个二维数组,其每一行从左到右递增排序,从上到下也是递增排序。给定一个数,判断这个数是否在该二维数组中。 Consider the following matrix: [ [1, 4, 7, 11, 15], [2, 5, 8, 12, 19], [3, 6, 9, 16, 22], [10, 13, 14, 17, 24], ...原创 2020-02-12 09:38:20 · 89 阅读 · 0 评论 -
【剑指offer】重建二叉树
题目链接 牛客网 题目描述 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。 pre: 1 2 4 7 3 5 6 8 in: 4 7 2 1 5 3 8 6 我们知道,前序遍历的第...原创 2020-02-13 14:46:27 · 70 阅读 · 0 评论 -
【剑指offer】用两个栈实现队列
题目链接 牛客网 题目描述 用两个栈来实现一个队列,完成队列的 Push 和 Pop 操作。 栈的特性:先进入的后出来,后进入的先出来(First in last out) 队列的特性:先进来的先出去(First in first out) 想要利用两个栈实现队列的特性,我们不难想到:一个栈用来 push,时间复杂度为 O(1),pop 的时候将栈中元素全部 pop 到第二个栈中。然后再将第二个...原创 2020-02-13 14:47:48 · 92 阅读 · 0 评论 -
【剑指offer】替换空格
题目链接 牛客网 题目描述 将一个字符串中的空格替换成 “%20”。 Input: "A B" Output: "A%20B" 从后往前遍历,移动数组元素。 public class Solution { public String replaceSpace(StringBuffer str) { int size = str.length(); in...原创 2020-02-13 14:45:11 · 68 阅读 · 0 评论 -
【剑指offer】矩形覆盖
题目链接 牛客网 题目描述 我们可以用 21 的小矩形横着或者竖着去覆盖更大的矩形。请问用 n 个 21 的小矩形无重叠地覆盖一个 2*n 的大矩形,总共有多少种方法? 记n 与覆盖方法的关系为 f(n) 当 n = 1时,f(1) = 1; 当 n = 2时,第一块横着放有一种,第一块竖着放有一种,所以f(2) = 2; 当 n = 3时,第一块横着放,有 f(2)种,第一块竖着放,有f(1)...原创 2020-02-18 20:45:11 · 74 阅读 · 0 评论