剑指offer
达不溜H
这个作者很懒,什么都没留下…
展开
-
剑指offer 39 数组中出现次数超过一半的数字
剑指offer 39 数组中出现次数超过一半的数字 题目 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。 你可以假设数组是非空的,并且给定的数组总是存在多数元素。 示例 1: 输入: [1, 2, 3, 2, 2, 2, 5, 4, 2] 输出: 2 限制: 1 <= 数组长度 <= 50000 解法一:用HashMap记录每个数的个数 class Solution { public int majorityElement(int[] nums)原创 2020-07-18 23:19:07 · 68 阅读 · 0 评论 -
剑指offer 10-II 青蛙跳台阶
剑指offer 10-II 青蛙跳台阶 一只青蛙一次可以跳上1级台阶,也可以跳上2级台阶。求该青蛙跳上一个 n 级的台阶总共有多少种跳法。 答案需要取模 1e9+7(1000000007),如计算初始结果为:1000000008,请返回 1。 示例 1: 输入:n = 2 输出:2 示例 2: 输入:n = 7 输出:21 提示: 0 <= n <= 100 动态规划解析: 状态定义: 设 dp为一维数组,其中 dp[i] 的值代表 斐波那契数列第 $i个数字 。 转移方程:原创 2020-07-18 23:18:02 · 93 阅读 · 0 评论 -
剑指offer10-1 斐波那契数列
剑指offer10-1 斐波那契数列 题目 写一个函数,输入 n ,求斐波那契(Fibonacci)数列的第 n 项。斐波那契数列的定义如下: F(0) = 0, F(1) = 1 F(N) = F(N - 1) + F(N - 2), 其中 N > 1. 斐波那契数列由 0 和 1 开始,之后的斐波那契数就是由之前的两数相加而得出。 答案需要取模 1e9+7(1000000007),如计算初始结果为:1000000008,请返回 1。 解法1:递归 很多新手一上来就会想到用递归,当然,结原创 2020-07-18 23:17:05 · 96 阅读 · 0 评论