![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
剑指offer
文章平均质量分 75
郑斑
唯有拥有一个人在黑暗中也能毅然决然行走的坚强 才能与擦肩而过的他人构建深刻的关系
展开
-
跳台阶(斐波那契数列)
一、斐波那契数列 题目:大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项。n<=39 思路: 1、用递归,系统会让一个超大的n来让Stack Overflow,所以递归就不考虑了。使用迭代。 2、考虑负数,极限,算法的时间空间复杂度 斐波那契数,注意:本题目n从1开始,f(0)=0; f(n)= 1 ...原创 2018-04-08 13:51:33 · 1014 阅读 · 0 评论 -
栈---四题
一、 使用递归函数和栈操作,逆序一个栈 思路:需要设计两个递归函数 递归函数一:将栈stack的栈底元素返回并移除。 递归函数二:逆序一个栈,并调用递归函数一。 import java.util.Scanner; import java.util.Stack; /** * @author zhengban * */ public class MyStac...原创 2018-04-14 19:40:10 · 679 阅读 · 0 评论 -
最小的K个数
题目:输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,。 import java.util.ArrayList; public class Solution { public ArrayList<Integer> GetLeastNumbers_Solution(int [] input, int k)...原创 2018-04-02 20:20:33 · 99 阅读 · 0 评论 -
替换空格
题目:请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 public class Solution2{ public String replaceSpace(StringBuffer str) { int index = 0; int start...原创 2018-03-25 16:41:12 · 122 阅读 · 0 评论 -
数组中重复的数字
题目:在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任意一个重复的数字。 例如,如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出是第一个重复的数字2。 思路:最先想的是可以排序,然后再判断number[i] 和number[i+1]就可以了,代码也通过了,但是后来仔细想想...原创 2018-03-24 15:32:24 · 114 阅读 · 0 评论 -
旋转数组的最小数字
题目:把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。 import java.util.ArrayList; public class Solution ...原创 2018-03-23 11:34:39 · 85 阅读 · 0 评论 -
二维数组中的查找
题目 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 //方法1:暴力法 public class Solution { public static boolean Find(int target, int [][] array) { f...原创 2018-03-16 09:56:36 · 151 阅读 · 0 评论