剑指offer(java实现)第24题“二叉树中和为某一值的路径”-牛客网

题目描述 输入一颗二叉树的跟节点和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。(注意: 在返回值的list中,数组长度大的数组靠前) 时间限制:1秒 空间限制:32768K 热度指数:219248 解答: i...

2018-08-06 20:04:14

阅读数 121

评论数 0

剑指offer(java实现)第23题“二叉搜索树的后序遍历序列”-牛客网

题目描述 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。 时间限制:1秒 空间限制:32768K 热度指数:240354 解答: public class Solution {//按照二叉搜索树和...

2018-07-31 21:00:35

阅读数 187

评论数 0

MySQL索引背后的数据结构及算法原理

转载自:张洋,这也是我看过最好的关于mysql索引的博客,在此保存方便今后复习并分享:http://blog.codinglabs.org/articles/theory-of-mysql-index.html

2018-07-31 00:39:57

阅读数 92

评论数 0

剑指offer(java实现)第22题“从上往下打印二叉树”-牛客网

题目描述 从上往下打印出二叉树的每个节点,同层节点从左至右打印。 时间限制:1秒 空间限制:32768K 热度指数:214680 解答: import java.util.ArrayList; import java.util.concurrent.LinkedBlockingQueue...

2018-07-31 00:31:13

阅读数 65

评论数 0

剑指offer(java实现)第21题“栈的压入、弹出序列”-牛客网

题目描述 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列...

2018-07-30 23:54:56

阅读数 204

评论数 0

剑指offer(java实现)第20题“包含min函数的栈”-牛客网

题目描述 定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1))。 时间限制:1秒 空间限制:32768K 热度指数:170246 解答: import java.util.Stack; public class Solution {//思...

2018-07-29 18:54:10

阅读数 87

评论数 0

剑指offer(java实现)第19题“顺时针打印矩阵”-牛客网

题目描述 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下4 X 4矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数字1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10. 时间限制:1...

2018-07-29 18:15:27

阅读数 115

评论数 0

剑指offer(java实现)第18题“二叉树的镜像 ”-牛客网

题目描述 操作给定的二叉树,将其变换为源二叉树的镜像。 输入描述: 二叉树的镜像定义:源二叉树 8 / \ 6 10 / \ / \ 5 7 9 11 镜像二叉树 8 ...

2018-07-26 21:17:51

阅读数 47

评论数 0

剑指offer(java实现)第17题“树的子结构 ”-牛客网

题目描述 输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构) 时间限制:1秒 空间限制:32768K 热度指数:271259 解答: /** public class TreeNode { int val = 0; TreeNode...

2018-07-24 22:06:56

阅读数 65

评论数 0

剑指offer(java实现)第16题“合并两个排序的链表 ”-牛客网

题目描述 输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。 时间限制:1秒 空间限制:32768K 热度指数:278635 解答: /* public class ListNode { int val; ListNode nex...

2018-07-24 21:18:10

阅读数 72

评论数 0

剑指offer(java实现)第15题“反转链表 ”-牛客网

题目描述 输入一个链表,反转链表后,输出新链表的表头。 时间限制:1秒 空间限制:32768K 热度指数:295468 解答: /* public class ListNode { int val; ListNode next = null; ListNode(...

2018-07-24 20:45:00

阅读数 332

评论数 0

剑指offer(java实现)第14题“调整数组顺序使奇数位于偶数前面 ”-牛客网

题目描述 输入一个链表,输出该链表中倒数第k个结点。 时间限制:1秒 空间限制:32768K 热度指数:408652 解答: /* public class ListNode { int val; ListNode next = null; ListNode(i...

2018-07-23 22:02:48

阅读数 196

评论数 0

剑指offer(java实现)第13题“调整数组顺序使奇数位于偶数前面 ”-牛客网

题目描述 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。 时间限制:1秒 空间限制:32768K 热度指数:300316 解答: public class Solut...

2018-07-23 21:44:13

阅读数 52

评论数 0

剑指offer(java实现)第12题“数值的整数次方”-牛客网

题目描述 给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。 时间限制:1秒 空间限制:32768K 热度指数:251747 解答: public class Solution {//首先返回值是double类型,那么应该不需要...

2018-07-23 20:45:26

阅读数 58

评论数 0

剑指offer(java实现)第11题“二进制中1的个数”-牛客网

题目描述 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。 时间限制:1秒 空间限制:32768K 热度指数:243756 解答1:解答2更优 思路:n的二进制的最右边位与1相与,如果是1,则加1;然后对1进行左移,成为二进制的10,继续与n的二进制右边数起的第二位进行相与...

2018-07-22 17:44:50

阅读数 194

评论数 0

剑指offer(java实现)第10题“矩形覆盖”-牛客网

题目描述 我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? 时间限制:1秒 空间限制:32768K 热度指数:181321 解答: public class Solution {//这个题目还是与之前的7、8...

2018-07-22 16:09:40

阅读数 62

评论数 0

剑指offer(java实现)第9题“变态跳台阶”-牛客网

题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 时间限制:1秒 空间限制:32768K 热度指数:204743 解答: public class Solution {//思路:此题和第七题第八题都是类似的,首先分析...

2018-07-22 15:54:49

阅读数 79

评论数 0

剑指offer(java实现)第8题“跳台阶”-牛客网

题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。 时间限制:1秒 空间限制:32768K 热度指数:262078 解答: public class Solution {//思路:从最基本的开始考虑,当n=1,...

2018-07-21 17:55:10

阅读数 79

评论数 0

剑指offer(java实现)第7题“斐波那契数列”-牛客网

题目描述 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。 n<=39 时间限制:1秒 空间限制:32768K 热度指数:345791 (不是题目描述中的内容)斐波那契数列的公式: 解答1:递归方式(效率和空...

2018-07-21 17:31:32

阅读数 87

评论数 0

剑指offer(java实现)第6题“旋转数组的最小数字”-牛客网

题目描述 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。 时间限...

2018-07-21 17:03:17

阅读数 129

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭