自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 Failed to resolve:com.android.support:appcompat-v7错误处理

今天使用android studio第一次创建项目时出现这个BUG Error:Failed to resolve: com.android.support:support-annotations:27.0.1 Install Repository and sync project Open Fi...

2020-05-26 15:56:29 33 0

原创 关于Android studio 异常Cannot launch AVD in emulator. Output: emulator: WARNING: Increasing RAM siz

今天第一次使用Android studio的时候出现了这个问题 废话不多说直接说解决方法 找到Android sdk所在的目录 查找你SDk安装路径。打开sdk下的以下路径。 Android\sdk\extras\intel\Hardware_Accelerated_Execution_Ma...

2020-05-24 11:58:30 30 0

原创 今天会是有offer的一天么-condition实现生产者消费者模式

今天我们使用condition简单实现一下生产者消费者模式。废话不多说直接上代码。 import java.util.PriorityQueue; import java.util.concurrent.locks.Condition; import java.util.concurrent.lo...

2020-05-16 17:22:48 59 0

原创 leetcode-322.零钱兑换

题目 给定不同面额的硬币 coins 和一个总金额 amount。编写一个函数来计算可以凑成总金额所需的最少的硬币个数。如果没有任何一种硬币组合能组成总金额,返回 -1。 示例 输入: coins = [1, 2, 5], amount = 11 输出: 3 解释: 11 = 5 + 5 + 1 ...

2020-05-14 22:02:04 69 0

原创 leetcode-406. 根据身高重建队列

题目 假设有打乱顺序的一群人站成一个队列。 每个人由一个整数对(h, k)表示,其中h是这个人的身高,k是排在这个人前面且身高大于或等于h的人数。 编写一个算法来重建这个队列。 注意: 总人数少于1100人。 示例 输入: [[7,0], [4,4], [7,1], [5,0], [6,1], [...

2020-05-12 18:22:36 79 0

原创 leetcode-309. 最佳买卖股票时机含冷冻期

题目 给定一个整数数组,其中第 i 个元素代表了第 i 天的股票价格 。​ 设计一个算法计算出最大利润。在满足以下约束条件下,你可以尽可能地完成更多的交易(多次买卖一支股票): 你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。 卖出股票后,你无法在第二天买入股票 (即冷冻期为 1 天...

2020-05-12 17:15:10 54 0

原创 leetcode-300.最长上升子序列

题目 给定一个无序的整数数组,找到其中最长上升子序列的长度。 示例 输入: [10,9,2,5,3,7,101,18] 输出: 4 解释: 最长的上升子序列是 [2,3,7,101],它的长度是 4。 代码 class Solution { public int lengthOfLIS(...

2020-05-12 16:20:34 48 0

原创 leetcode-236. 二叉树的最近公共祖先

题目 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。” 示例 例如,给定如下二叉树: root =...

2020-05-12 11:40:11 58 0

原创 leetcode-226. 翻转二叉树

题目 翻转一棵二叉树。 示例 输入: 4 / \ 2 7 / \ / \ 1 3 6 9 输出: 4 / \ 7 2 / \ / \ 9 6 3 1 代码 /** * ...

2020-05-12 10:16:17 58 0

原创 leetcode-221.最大正方形

题目 在一个由 0 和 1 组成的二维矩阵内,找到只包含 1 的最大正方形,并返回其面积。 示例 输入: 1 0 1 0 0 1 0 1 1 1 1 1 1 1 1 1 0 0 1 0 输出: 4 方法有很多,这里只列举一种最容易理解的思路 class Solution { public...

2020-05-12 10:07:16 57 0

原创 leetcode-215. 数组中的第K个最大元素

题目 在未排序的数组中找到第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。 示例 输入: [3,2,1,5,6,4] 和 k = 2 输出: 5 输入: [3,2,3,1,2,4,5,5,6] 和 k = 4 输出: 4 代码,千万别sor...

2020-05-12 00:27:00 60 0

原创 leetcode-206. 反转链表

题目 反转一个单链表。 示例 输入: 1->2->3->4->5->NULL 输出: 5->4->3->2->1->NULL 代码 /** * Definition for singly-linked list. * public c...

2020-05-11 17:39:42 54 0

原创 leetcode-155. 最小栈

题目 设计一个支持 push ,pop ,top 操作,并能在常数时间内检索到最小元素的栈。 push(x) —— 将元素 x 推入栈中。 pop() —— 删除栈顶的元素。 top() —— 获取栈顶元素。 getMin() —— 检索栈中的最小元素。 示例 输入: [“MinStack”,“p...

2020-05-11 16:48:49 55 0

原创 leetcode-152. 乘积最大子数组

题目 给你一个整数数组 nums ,请你找出数组中乘积最大的连续子数组(该子数组中至少包含一个数字),并返回该子数组所对应的乘积。 示例 输入: [2,3,-2,4] 输出: 6 解释: 子数组 [2,3] 有最大乘积 6。 输入: [-2,0,-1] 输出: 0 解释: 结果不能为 2, 因为 ...

2020-05-11 16:11:24 58 0

原创 leetcode-148. 排序链表

题目 在 O(n log n) 时间复杂度和常数级空间复杂度下,对链表进行排序。 示例 输入: 4->2->1->3 输出: 1->2->3->4 输入: -1->5->3->4->0 输出: -1->0->3->4-&...

2020-05-11 15:07:56 56 0

原创 leetcode-146. LRU缓存机制

题目 运用你所掌握的数据结构,设计和实现一个 LRU (最近最少使用) 缓存机制。它应该支持以下操作: 获取数据 get 和 写入数据 put 。 获取数据 get(key) - 如果密钥 (key) 存在于缓存中,则获取密钥的值(总是正数),否则返回 -1。 写入数据 put(key, val...

2020-05-11 14:16:17 64 0

原创 leetcode-打家劫舍系列

题目打家劫舍一 你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。 给定一个代表每个房屋存放金额的非负整数数组,计算你在不触动警报装置的情况下,能够偷窃到的最高金额...

2020-05-11 11:43:42 59 0

原创 leetcode-114. 二叉树展开为链表

题目(字节被问到过这道题) 给定一个二叉树,原地将它展开为链表。 示例 输入: 1 / \ 2 5 / \ \ 3 4 6 输出: 代码 class Solution { public void flatten(TreeNode root)...

2020-05-11 10:34:24 57 0

原创 leetcode-128. 最长连续序列

题目 给定一个未排序的整数数组,找出最长连续序列的长度。 要求算法的时间复杂度为 O(n)。 示例 输入: [100, 4, 200, 1, 3, 2] 输出: 4 解释: 最长连续序列是 [1, 2, 3, 4]。它的长度为 4。 这道题目既然有时间复杂度要求,那么我们只能用空间去换时间 代码 ...

2020-05-06 11:36:51 60 0

原创 leetcode-124. 二叉树中的最大路径和

题目 给定一个非空二叉树,返回其最大路径和。 本题中,路径被定义为一条从树中任意节点出发,达到任意节点的序列。该路径至少包含一个节点,且不一定经过根节点。 示例 输入: [1,2,3] 1 / \ 2 3 输出: 6 输入: [-10,9,20,null,null,15,7] ...

2020-05-06 09:26:48 63 0

原创 leetcode-106. 从中序与后序遍历序列构造二叉树(要和通过前序和后续构建二叉树相对应)

题目 从中序与后序遍历序列构造二叉树 示例 中序遍历 inorder = [9,3,15,20,7] 后序遍历 postorder = [9,15,7,20,3] 代码 /** * Definition for a binary tree node. * public class TreeN...

2020-05-05 23:39:31 73 0

原创 leetcode-105. 从前序与中序遍历序列构造二叉树(这题一定要理解)

这道题目一定要理解,经常会遇到 根据一棵树的前序遍历与中序遍历构造二叉树。 示例 前序遍历 preorder = [3,9,20,15,7] 中序遍历 inorder = [9,3,15,20,7] 代码 /** * Definition for a binary tree node. * ...

2020-05-05 22:58:33 88 0

原创 leetcode-102. 二叉树的层序遍历

很常规的一道题目了 给你一个二叉树,请你返回其按 层序遍历 得到的节点值。 (即逐层地,从左到右访问所有节点)。 示例 二叉树:[3,9,20,null,null,15,7], 代码 /** * Definition for a binary tree node. * public clas...

2020-05-05 19:23:21 69 0

原创 leetcode-101. 对称二叉树

题目 给定一个二叉树,检查它是否是镜像对称的。 示例 例如,二叉树 [1,2,2,3,4,4,3] 是对称的。 但是下面这个 [1,2,2,null,3,null,3] 则不是镜像对称的: 代码 /** * Definition for a binary tree node. * publ...

2020-05-05 19:04:48 59 0

原创 leetcode-84. 柱状图中最大的矩形

题目这道题目算是比较难的了,需要好好解释一下 给定 n 个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为 1 。 求在该柱状图中,能够勾勒出来的矩形的最大面积。 输出示例 输入: [2,1,5,6,2,3] 输出: 10 代码一(非常好理解,但是时间复杂度非常大,不使用)...

2020-05-05 15:04:14 54 0

原创 leetcode-单词搜索

题目 给定一个二维网格和一个单词,找出该单词是否存在于网格中。 单词必须按照字母顺序,通过相邻的单元格内的字母构成,其中“相邻”单元格是那些水平相邻或垂直相邻的单元格。同一个单元格内的字母不允许被重复使用。 示例 board = [ [‘A’,‘B’,‘C’,‘E’], [‘S’,‘F’,‘C’,...

2020-05-05 01:19:41 63 0

原创 leetcode-78. 子集

题目 给定一组不含重复元素的整数数组 nums,返回该数组所有可能的子集(幂集)。 说明:解集不能包含重复的子集。 示例 输入: nums = [1,2,3] 输出: [ [3], [1], [2], [1,2,3], [1,3], [2,3], [1,2], [] ] 代码 class Sol...

2020-05-04 19:56:41 63 0

原创 leetcode-76. 最小覆盖子串

这道题目还是比较难的,UP看了解析后才明白 给你一个字符串 S、一个字符串 T,请在字符串 S 里面找出:包含 T 所有字母的最小子串。 示例 输入: S = “ADOBECODEBANC”, T = “ABC” 输出: “BANC” 如果 S 中不存这样的子串,则返回空字符串 “”。 如果 S ...

2020-05-04 00:40:01 69 0

原创 leetcode-75. 颜色分类

题目这道题目还是比较有意思的 给定一个包含红色、白色和蓝色,一共 n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。 此题中,我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。 注意: 不能使用代码库中的排序函数来解决这道题。 要求仅使用常数空间...

2020-05-03 16:47:24 105 0

原创 leetcode-72 编辑距离

题目 给你两个单词 word1 和 word2,请你计算出将 word1 转换成 word2 所使用的最少操作数 。 你可以对一个单词进行如下三种操作: 1.插入一个字符 2.删除一个字符 3.替换一个字符 示例 输入:word1 = “horse”, word2 = “ros” 输出:3 解释:...

2020-05-03 15:26:10 122 0

原创 leetcode-62不同路径

题目 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。 问总共有多少条不同的路径? 示例 输入: m = 3, n = 2 输出: 3 解释: 从左上角开始...

2020-05-03 00:08:56 150 0

原创 leetcode-56. 合并区间

题目 给出一个区间的集合,请合并所有重叠的区间。 示例 输入: [[1,3],[2,6],[8,10],[15,18]] 输出: [[1,6],[8,10],[15,18]] 解释: 区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6]. 输入: [[1,4],[4,5]] 输出: ...

2020-05-02 18:38:21 206 0

原创 leetcode-55. 跳跃游戏

题目 给定一个非负整数数组,你最初位于数组的第一个位置。 数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个位置。 示例 输入: [2,3,1,1,4] 输出: true 解释: 我们可以先跳 1 步,从位置 0 到达 位置 1, 然后再从位置 1 跳 3 步到达最后一...

2020-05-02 17:44:42 214 0

原创 leetcode-49. 字母异位词分组

题目 给定一个字符串数组,将字母异位词组合在一起。字母异位词指字母相同,但排列不同的字符串。 示例 输入: [“eat”, “tea”, “tan”, “ate”, “nat”, “bat”] 输出: [ [“ate”,“eat”,“tea”], [“nat”,“tan”], [“bat”] ] ...

2020-05-02 16:26:49 187 0

原创 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<L...

2020-05-02 15:03:48 161 0

原创 leetcode-42接雨水问题

题目 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度图,在这种情况下,可以接 6 个单位的雨水(蓝色部分表示雨水)。 示例 输入: [0,1,0,2,1,0,1,3,...

2020-05-02 00:03:30 145 0

原创 leetcode-39. 组合总和

题目 给定一个无重复元素的数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。 candidates 中的数字可以无限制重复被选取。 示例 输入: candidates = [2,3,6,7], target = 7, ...

2020-05-01 23:07:05 111 0

原创 leetcode-34. 在排序数组中查找元素的第一个和最后一个位置

题目 给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。 你的算法时间复杂度必须是 O(log n) 级别。 如果数组中不存在目标值,返回 [-1, -1]。 示例 输入: nums = [5,7,7,8,8,10], target ...

2020-05-01 19:28:35 156 0

原创 今天会是有offer的一天么-java中volatile关键字的使用

写在前面 volatile关键字在面试中也算是高频问题了,基本上涉及到并发都会被问到这个问题。今天来简单的总结一下。 先说一下volatile关键字的作用 一. 禁止指令重排 何为禁止指令重排?用一个代码简单解释一下 public class Singleton { //这里用volatile修...

2020-05-01 16:20:12 3320 0

原创 leetcode-33. 搜索旋转排序数组

题目(同样是有时间复杂度要求的) 假设按照升序排序的数组在预先未知的某个点上进行了旋转。 ( 例如,数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2] )。 搜索一个给定的目标值,如果数组中存在这个目标值,则返回它的索引,否则返回 -1 。 你可以假设数组中不存在重复的...

2020-05-01 12:25:19 181 0

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