武培轩
武培轩
全部文章
剑指Offer
Apollo(1)
Git(2)
Java(36)
JDK源码解析(8)
JVM(7)
Leetcode(38)
Maven(1)
MySQL(2)
Spring Boot(6)
工具(1)
微服务(3)
操作系统(1)
数据库(3)
未归档(53)
消息队列(1)
笔经(5)
笔试(6)
算法(4)
计算机网络(6)
设计模式(12)
读书笔记(5)
面经(8)
面试(5)
归档
标签
去牛客网
登录
/
注册
武培轩
专注分享 Java 技术干货,助你编程之路少走弯路。
全部文章
/ 剑指Offer
(共56篇)
剑指Offer-跳台阶
题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 思路 思路一: 直接用递归,对于第n个台阶来说,只能从n-1或者n-2的台阶跳上来,所以(F(n) = F(n-1) + F(n-2)),(f(1)=1),(f(2)=2) 思路二: 用迭代的方法,...
剑指Offer
2018-03-22
0
411
剑指Offer-二维数组中的查找
题目描述 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 思路 思路一: 暴力,时间复杂度(O(mn)) 思路二: 利用二维数组由上到下,由左到右递增的规律,那么选取左下角或者右上...
剑指Offer
2018-03-22
0
530
剑指Offer-替换空格
题目描述 请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We AreHappy.则经过替换之后的字符串为We%20Are%20Happy。 思路 思路一: 遍历字符串,当发现空格时,替换空格,改变原数据 思路二: 直接把StringBuffer转换成String调用repla...
剑指Offer
2018-03-22
0
428
剑指Offer-从尾到头打印链表
题目描述 输入一个链表,从尾到头打印链表每个节点的值。 思路 思路一: 递归方法 思路二: 从尾到头打印,很明显先进后出,利用栈,栈先进后出 代码实现 package LinkedList; import java.util.ArrayDeque; import java.util.ArrayLis...
剑指Offer
2018-03-22
0
444
剑指Offer-用两个栈实现队列
题目描述 用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 思路 栈A用来作入队列,栈B用来出队列,当栈B为空时,栈A全部出栈到栈B,栈B再出栈(即出队列) 代码实现 package StackAndQueue; import java.util.Stack; /...
剑指Offer
2018-03-22
0
513
剑指Offer-旋转数组的最小数字
题目描述 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。 思路 思路...
剑指Offer
2018-03-22
0
445
剑指Offer-斐波那契数列
题目描述 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项。n<=39 思路 思路一: 用递归求解,F0=0,F1=1,Fn=F(n-1)+F(n-2)(n>=2,n∈N*) 思路二: 用迭代方法,用两个变量记录fn-1和fn-2 代码实现 package R...
剑指Offer
2018-03-22
0
642
剑指Offer-变态跳台阶
题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 思路 思路一: 用递归求解 (f(n) = f(n-1) + f(n-2) + ... + f(1)) (f(n-1) = f(n-2) + ... + f(1)) (f(n) = 2*f(n-1)...
剑指Offer
2018-03-22
0
458
剑指Offer-矩形覆盖
题目描述 我们可以用2 * 1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2 * 1的小矩形无重叠地覆盖一个2 * n的大矩形,总共有多少种方法? 思路 当n=1,\(f(n)=1\) 当n=2,\(f(n)=2\) 当n>2时,当第一个小矩形横着放时,摆法有...
剑指Offer
2018-03-22
0
463
剑指Offer-二进制中1的个数
题目描述 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。 思路 思路一: 用flag来与n的每位做位于运算,来判断1的个数 思路二: 如果一个整数不为0,那么这个整数至少有一位是1。 如果我们把这个整数减1,那么原来处在整数最右边的1就会变为0,原来在1后面的所有的0都会变成1(如...
剑指Offer
2018-03-22
0
507
首页
上一页
1
2
3
4
5
6
下一页
末页