
java
且将光阴浸苦酒
黑夜里没有炬火,我是唯一的光
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
旋转数组的最小数字
把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素。例如,数组 [3,4,5,1,2] 为 [1,2,3,4,5] 的一个旋转,该数组的最小值为1。 示例 1: 输入:[3,4,5,1,2] 输出:1 示例 2: 输入:[2,2,2,0,1] 输出:0 //暴力查询 class Solution { public int minArray(int[] numbers) { int min=numbers[0];原创 2020-11-01 17:27:24 · 138 阅读 · 0 评论 -
青蛙跳台阶问题
一只青蛙一次可以跳上1级台阶,也可以跳上2级台阶。求该青蛙跳上一个 n 级的台阶总共有多少种跳法。 答案需要取模 1e9+7(1000000007),如计算初始结果为:1000000008,请返回 1。 示例 1: 输入:n = 2 输出:2 示例 :2 输入:n = 7 输出:21 示例 :3: 输入:n = 0 输出:1 0 <= n <= 100 class Solution { public int numWays(int n) { int a = 1, b =原创 2020-11-01 17:20:44 · 167 阅读 · 0 评论 -
斐波那契数列
写一个函数,输入 n ,求斐波那契(Fibonacci)数列的第 n 项。斐波那契数列的定义如下: F(0) = 0, F(1) = 1 F(N) = F(N - 1) + F(N - 2), 其中 N > 1. 斐波那契数列由 0 和 1 开始,之后的斐波那契数就是由之前的两数相加而得出。 答案需要取模 1e9+7(1000000007),如计算初始结果为:1000000008,请返回 1。 示例 1 输入:n = 2 输出:1 示例 2: 输入:n = 5 输出:5 //时间比较长 clas原创 2020-11-01 17:08:24 · 1177 阅读 · 0 评论 -
用两个栈实现队列
题目 用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead 操作返回 -1 ) 示例 1: 输入: [“CQueue”,“appendTail”,“deleteHead”,“deleteHead”] [[],[3],[],[]] 输出:[null,null,3,-1] 示例 2: 输入: [“CQueue”,“deleteHead”,“appendTail”原创 2020-11-01 16:09:20 · 199 阅读 · 0 评论 -
重建二叉树
题目:输入某二叉树的前序遍历和中序遍历的结果,请重建该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。 例如,给出 前序遍历 preorder = [3,9,20,15,7] 中序遍历 inorder = [9,3,15,20,7] 返回如下的二叉树: 3 / \ 9 20 / \ 15 7 题目思路: 前序遍历【根节点,左,右】 中序遍历【左,根节点,右】 前序遍历 preorder = [3,9,20,15,7] 中序遍历 inorder原创 2020-11-01 15:24:04 · 198 阅读 · 2 评论 -
从尾到头打印链表
输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。 示例 1: 输入:head = [1,3,2] 输出:[2,3,1] 限制: 0 <= 链表长度 <= 10000 class Solution { public int[] reversePrint(ListNode head) { Stack<Integer> stack=new Stack<Integer>(); int length=0; wh原创 2020-10-28 23:25:25 · 84 阅读 · 0 评论 -
二维数组中的查找
在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 示例: 现有矩阵 matrix 如下: [ [1, 4, 7, 11, 15], [2, 5, 8, 12, 19], [3, 6, 9, 16, 22], [10, 13, 14, 17, 24], [18, 21, 23, 26, 30] ] 给定 target = 5,返回 true。 给定 targ.原创 2020-10-28 15:39:09 · 73 阅读 · 0 评论 -
数组中重复的数字
数组中重复的数字 找出数组中重复的数字。 在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。 示例 1: 输入: [2, 3, 1, 0, 2, 5, 3] 输出:2 或 3 class Solution { public int findRepeatNumber(int[] nums) { int a=0; //给循环命名A原创 2020-10-28 13:49:15 · 142 阅读 · 0 评论 -
两数相加
2. 两数相加 问题描述:给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储一位数字。 如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。 您可以假设除了数字 0 之外,这两个数都不会以 0 开头。 代码 class Solution { public ListNode addTwoNumbers(ListNode l1, ListNode l2) { //声明一个节点为头节点,因为是尾插,最终的n转载 2020-10-28 12:04:41 · 67 阅读 · 0 评论 -
文件练习题
1 练习 递归删除某个目录下的所有的文件 public static void main(String[] args) { File file = new File("F:/新建文件夹"); deleteFile(file); System.out.println("成功删除!"); } public static boolean deleteFile(File fil...原创 2019-08-01 16:56:29 · 443 阅读 · 0 评论 -
有关于java中SimpleDateFormat和ArrayList<String>的例子
6、写一个发牌代码,三个人玩,斗地主,注意底牌留三张 public static void main(String[] argc) { ArrayList<String> U1=new ArrayList<String>(); ArrayList<String> U2=new ArrayList<String>(); ArrayLi...原创 2019-07-21 16:47:27 · 265 阅读 · 0 评论 -
切割合并文件
编写程序,将一个视频文件,切割成指定大小的文件块 将上面切割出来的文件,合并成一个文件。 public static void main(String[] args) throws IOException { // TODO Auto-generated method stub try { System.out.println("请输入想要切割数量"); Scanner s...原创 2019-07-30 14:47:49 · 85 阅读 · 0 评论 -
笔记
**************Collections 类 List a=new ArrayList(); a.add(13); a.add(1); a.add(1); a.add(7); a.add(1); a.add(4); =======1)给list集合排序 Collections.sort(a); =======2)用 Collections加比较器 Collections.sort(a, ...原创 2019-07-23 16:14:47 · 94 阅读 · 0 评论