刷题
失散Lost
这个作者很懒,什么都没留下…
展开
-
面试题 10.01. 合并排序的数组
给定两个排序后的数组 A 和 B,其中 A 的末端有足够的缓冲空间容纳 B。 编写一个方法,将 B 合并入 A 并排序。初始化 A 和 B 的元素数量分别为 m 和 n。示例:输入:A = [1,2,3,0,0,0], m = 3B = [2,5,6], n = 3输出: [1,2,2,3,5,6]来源:力扣(LeetCode)链接:https://leetcode-c...原创 2020-03-03 21:59:39 · 155 阅读 · 0 评论 -
剑指offer:面试题39. 数组中出现次数超过一半的数字
数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。你可以假设数组是非空的,并且给定的数组总是存在多数元素。示例 1:输入: [1, 2, 3, 2, 2, 2, 5, 4, 2]输出: 2限制:1 <= 数组长度 <= 50000来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/shu-zu-zhong-c...原创 2020-03-03 21:54:39 · 165 阅读 · 0 评论 -
剑指offer:面试题07. 重建二叉树
剑指offer:面试题07. 重建二叉树输入某二叉树的前序遍历和中序遍历的结果,请重建该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。 例如,给出前序遍历 preorder = [3,9,20,15,7]中序遍历 inorder = [9,3,15,20,7]返回如下的二叉树: 3 / \ 9 20 / \ ...原创 2020-02-14 09:52:09 · 186 阅读 · 0 评论 -
面试题04. 二维数组中的查找
剑指offer:面试题04. 二维数组中的查找在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 示例:现有矩阵 matrix 如下:[ [1, 4, 7, 11, 15], [2, 5, 8, 12, 19], [3, ...原创 2020-02-13 13:09:25 · 240 阅读 · 0 评论 -
leetcode: 59. 螺旋矩阵 II
leetcode: 59. 螺旋矩阵 II给定一个正整数 n,生成一个包含 1 到 n2 所有元素,且元素按顺时针顺序螺旋排列的正方形矩阵。示例:输入: 3输出:[ [ 1, 2, 3 ], [ 8, 9, 4 ], [ 7, 6, 5 ]]class Solution { public int[][] generateMatrix(int n) { ...原创 2020-01-14 20:31:16 · 253 阅读 · 0 评论 -
剑指offer:旋转数组的最小数字
剑指offer:旋转数组的最小数字把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。import java.util.*;public class Solution ...原创 2020-01-14 17:22:01 · 123 阅读 · 0 评论 -
leetcode: 46. 全排列
leetcode: 46. 全排列给定一个没有重复数字的序列,返回其所有可能的全排列。示例:输入: [1,2,3]输出:[ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1]]class Solution { public List<List<Integer>> permu...原创 2020-01-14 16:09:34 · 123 阅读 · 0 评论 -
剑指offer:用两个栈实现队列
剑指offer:用两个栈实现队列用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。import java.util.Stack;public class Solution { Stack<Integer> stack1 = new Stack<Integer>(); Stack<Integer> stac...原创 2020-01-14 10:08:50 · 142 阅读 · 0 评论 -
剑指offer:从尾到头打印链表
剑指offer:从尾到头打印链表输入一个链表,按链表从尾到头的顺序返回一个ArrayList。by牛客网讨论区的大佬 使用了递归的思想/*** public class ListNode {* int val;* ListNode next = null;** ListNode(int val) {* t...原创 2020-01-14 09:55:45 · 104 阅读 · 0 评论 -
剑指offer:重建二叉树
剑指offer:重建二叉树by牛客网输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回/** * Definition for binary tree * public class TreeNode { ...原创 2020-01-14 09:45:46 · 108 阅读 · 0 评论 -
leetcode: 70. 爬楼梯
leetcode: 70. 爬楼梯假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?注意:给定 n 是一个正整数。示例 1:输入: 2输出: 2解释: 有两种方法可以爬到楼顶。1. 1 阶 + 1 阶2. 2 阶示例 2:输入: 3输出: 3解释: 有三种方法可以爬到楼顶。1. 1 阶 + 1...原创 2020-01-08 11:29:40 · 183 阅读 · 0 评论 -
剑指offer:连续子数组的最大和
剑指offer:连续子数组的最大和(牛客网)HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学。今天测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决。但是,如果向量中包含负数,是否应该包含某个负数,并期望旁边的正数会弥补它呢?例如:{6,-3,-2,7,-15,1,2,2},连续子向量的最大和为8(从第0个开始,到第3个为止)...原创 2020-01-08 10:51:05 · 87 阅读 · 0 评论 -
leetcode:206.反转链表
206. 反转链表反转一个单链表。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL进阶:你可以迭代或递归地反转链表。你能否用两种方法解决这道题?import java.util.*;/** * Definition for singly-linked list. ...原创 2020-01-08 10:47:39 · 131 阅读 · 0 评论