
剑指Offer
要不一起ci个饭
我想去山顶⛰️
展开
-
剑指Offer——一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
青蛙跳台阶的变形,青蛙每次可以跳1、2、。。。n次 如图从第四个开原创 2020-10-24 14:45:43 · 861 阅读 · 0 评论 -
剑指Offer——一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。
详细解答点这个 public class Solution { public int JumpFloor(int target) { int sum = 0 ; if(target <= 2){ return target ; }else{ sum = JumpFloor(target - 1)+JumpFloor(target - 2); } return sum.原创 2020-10-24 12:29:50 · 109 阅读 · 0 评论 -
剑指Offer——大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0,第1项是1)。 n<=39
裴波那契数列的规律就是第0项为0,第一项为1,从第2项开始后一个等于前两个之和 利用数学规律递归 public class Solution { public int Fibonacci(int n) { if(n == 0){ return 0; } if(n == 1){ return 1; }else{ return (Fibonacci(n-1)+Fibonac.原创 2020-10-24 12:10:32 · 498 阅读 · 0 评论 -
剑指Offer——旋转数组的最小数字
这道题说到底就是一个在数组中找最小的数字,,所以方法有很多,在这里就列举出两个。 1、暴力检索 遍历所有的元素找到最小的那一个,思路简单但是时间消耗多,如果数组大小不为0,首先定义一个变量num为数组的第一个数值,然后遍历数组,用这个数组和剩下的元素进行比较,凡是小于这个数值的就将num值改变 import java.util.ArrayList; public class Solution { public int minNumberInRotateArray(int [] array) { .原创 2020-10-23 11:52:01 · 89 阅读 · 0 评论 -
剑指Offer——用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。
本题不难,栈是先进后出,队列是先进先出,栈是先进后出,所以用栈实现队列就需要两个栈来完成。一定要注意判空 代码实现 import java.util.Stack; public class Solution { Stack<Integer> stack1 = new Stack<Integer>(); Stack<Integer> stack2 = new Stack<Integer>(); public void pu.原创 2020-10-22 18:16:53 · 192 阅读 · 0 评论