年少挽剑世无双·
年少挽剑世无双·
全部文章
分类
剑指Offer(7)
未归档(4)
题解(42)
归档
标签
去牛客网
登录
/
注册
年少挽剑世无双
全部文章
(共53篇)
剑指Offer第十三题:调整数组顺序使奇数位于偶数前面
题目描述输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。 解答:public class Q_13 { public void reOrderArray(int[] array) ...
2020-03-05
1
508
剑指Offer第十二题:数值的整数次方
题目:给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。保证base和exponent不同时为0解答:为啥先想到的是递归,真是摆脱不了了1.递归public class Q_12 { public double Power(double b...
2020-03-05
0
516
剑指Offer第十一题:二进制中1的个数
题目描述输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。 解答:(借鉴大佬的方法)1.一个数只要不是0,那么他的二进制中至少有一位是1;2.一个二进制数减一,那么从他最右边的1开始,所有位取反。举个栗子,1100减一得1011,那么后三位100变成了 011。3.一个数和他的前一位...
2020-03-05
1
551
剑指Offer第十题:矩阵覆盖
我们可以用21的小矩形横着或者竖着去覆盖更大的矩形。请问用n个21的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? 比如n=3时,2*3的矩形块有3种覆盖方法: 解答:思想:和跳台阶类似,小矩形竖着放相当于跳一级台阶,横着放相当于跳两级台阶,所以可以复用跳台阶的代码(见第八题)。 pub...
2020-03-05
14
1255
剑指Offer第九题:变态跳台阶
题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法解答:思想:n级台阶跳法=(n-1..)+(n-2..)+...+1级台阶跳法+1 。public class Q_9 { public int JumpFloorII(int ...
2020-03-05
1
575
剑指Offer第八题:跳台阶
题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。 解答:1.设置一个全局变量time默认为零,模拟跳的过程,当跳到最终台阶的时候time加一。此方法耗时长。public class Q_8 { public int ti...
2020-03-05
4
786
剑指Offer第七题:斐波那契数列
题目描述大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。n<=39解答:public class Q_7 { public int Fibonacci(int n) { if (n <= 0) { return...
2020-03-04
1
842
剑指Offer第六题:旋转数组的最小数字
题目描述把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。NOTE:给出的所有元素都大于0,若数组大小为0,请返回0 解答:public ...
2020-03-04
0
922
剑指Offer第五题:用两个栈实现队列
题目:用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 解答:别人家的解答:import java.util.Stack;public class Solution { Stack<Integer> stack1 = new Stack<Inte...
2020-03-04
1
678
剑指Offer第四题:重建二叉树
题目:输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。 解答:递归方法:public class Q_4 { p...
2020-03-04
1
578
首页
上一页
1
2
3
4
5
6
下一页
末页