java
文章平均质量分 59
Lindsay.Lu丶
- find more, find yourself. -
展开
-
IDEA运行缓慢卡顿,解决idea卡顿,中文乱码等
IDEA卡顿原因使用IDEA时,总是点一下卡一下,真的对人是一种折磨!其实,这种情况主要因为IDEA默认启动配置,一款软件它要考虑低配置用户,所以初始化参数不高(默认最低128m,最高512m),导致启动慢,然后运行也不流畅。因此我们需要优化下启动和运行配置。优化IDEA配置 ---- 重点推荐的方法由于IDEA初始参数低,但是在工作中的电脑一般都是8G或者16G的运行内存,所以我们需要手动去修改默认的IDEA配置。使得我们的体验更加流畅!这里是主要是 idea安装目录下的bin文件夹下的ide转载 2022-05-25 09:17:02 · 35446 阅读 · 0 评论 -
【OOP】Bean、POJO、entity、model
解释1. BeanBean,应用在Spring上,所有被Spring管理的类对象就可以将其称作为Bean。它不仅仅可以包括对象的属性以及get,set方法,还可以有具体的业务逻辑。2. entity顾名思义,实体,即指数据库表对应到实体类的映射。3. POJO普通java对象,除了属性和get、set方法外不包含具体的业务逻辑方法,和Entity区别在于没有和数据表中字段一一对应。4. modelmodel的字段要大于entity的字段,model主要用作前端页面数据展示,属性,字转载 2022-05-24 13:23:27 · 1084 阅读 · 0 评论 -
Java正则表达式Regex 后向引用$1, \\1
1、在 Java 字符串的: 1 2 public String replaceFirst(String regex, String replacement) public String replaceAll(String regex, String replacement) 两方法的第二个参数中是可以用 $1, $2 ... 来引用第一个参数的括号分组的,简单 Java 示例代码如下: 1 2 "abc d原创 2022-03-31 16:50:23 · 3144 阅读 · 0 评论 -
为何Java中子类重写方法的访问权限不能低于父类中权限
参考:http://zhidao.baidu.com/link?url=E-c1LVmYCi3I-X1u5imdsDsdoyfeY2dJau6tU1bWnf4QAS4uthnM_8ffm6K177GE8FMdA8dI7eEofepPzfR_fq因为 向上转型及java程序设计维护的原因例:假设一个父类A 拥有的方法 public void setXXX(){} 可以被其他任意对象调用这个方法被子类B 覆写后 为 void setXXX(){} 即 默认的 访问权限 只能被本包极...原创 2021-10-12 16:17:22 · 1441 阅读 · 0 评论 -
【LeetCode】23. 合并K个排序链表(Hard)(Heap / 分治)
Q23. 合并K个排序链表 【Hard】合并 k 个排序链表,返回合并后的排序链表。说明:请分析和描述算法的复杂度。样例 0:输入:[ 1->4->5, 1->3->4, 2->6]输出: 1->1->2->3->4->4->5->6样例 1: 输入: [2->4->null,null,-1->null] 输出: -1->2...原创 2021-04-14 12:02:51 · 109 阅读 · 0 评论 -
【LeetCode】264. 丑数II(Medium)
Q264. 丑数II编写一个程序,找出第 n 个丑数。 丑数就是质因数只包含 2, 3, 5 的正整数。说明:1 是丑数; n 不超过1690。例 1: 符合条件的数如:1, 2, 3, 4, 5, 6, 8, 9, 10, 12...输入:9输出:10相关题目: 791.合并数字518.超级丑数513.完美平方488.快乐数147.水仙花数104.合并k排序链表最小堆 解题思路:很容易想到的方法是:从1起检验每个数是否为丑数,直到找到n个丑数为止。但是随着...原创 2021-04-14 10:04:18 · 77 阅读 · 0 评论 -
【LeetCode】qo_38. 字符串的排列【Medium】
Q9_10/Qo_38. 字符串的全排列II 【字符串】给定一个可包含重复的字符串,返回所有不重复的全排列。例1:Input: "abb"Output: ["abb", "bab", "bba"]Example 2:Input: "aabb"Output: ["aabb", "abab", "baba", "bbaa", "abba", "baab"]基本上和Permutation实现的思路一样,不同的是string的特性,不能直接append 还有pop,也传导的不是refe原创 2021-04-10 12:59:45 · 105 阅读 · 0 评论 -
【LeetCode】47. 全排列II(Medium)
47. 全排列II 【数字数组】给定一个可包含重复数字的序列,返回所有不重复的全排列。说明:0 ≤ N ≤ 30例1:输入: [1,1,2]输出:[ [1,1,2], [1,2,1], [2,1,1]].使用排列式深度优先搜索算法。和没有重复元素的 Permutation 一题相比,只加了两句话:Arrays.sort(nums) // 排序这样所有重复的数 if (i > 0 && nums[i]== nums[i - ...原创 2021-04-10 11:14:16 · 270 阅读 · 0 评论 -
【LeetCode】46.全排列·permutations(Medium)
46. 全排列·permutations 【数字数组】给定一个 没有重复 数字的序列,返回其所有可能的全排列挑战:使用递归和非递归分别解决例1:输入: [1,2,3]输出:[ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1]]相关题目: 935.笛卡尔积371.用递归打印数字388.第k个排列16.带重复元素的排列思路:穷举整棵决策树是无法避免的。这也是回溯算法的...原创 2021-04-10 10:47:32 · 138 阅读 · 0 评论 -
【LeetCode】491. 递增子序列(Medium)
491. 递增子序列给定一个整型数组, 你的任务是找到所有该数组的递增子序列,递增子序列的长度至少是 2 。示例:输入:[4, 6, 7, 7]输出:[[4, 6], [4, 7], [4, 6, 7], [4, 6, 7, 7], [6, 7], [6, 7, 7], [7,7], [4,7,7]]思路:private List<List<Integer>> res = new ArrayList<>(); priv.原创 2021-04-09 13:27:51 · 105 阅读 · 0 评论 -
【LeetCode】90.子集II · Subsets-ii(Medium)
给定一个可能具有重复数字的列表,返回其所有可能的子集。子集中的每个元素都是非降序的 两个子集间的顺序是无关紧要的 解集中不能包含重复子集。示例 1:输入:nums = [1,2,2]输出:[[],[1],[1,2],[1,2,2],[2],[2,2]]示例 2:输入:nums = [0]输出:[[],[0]]挑战:你可以同时用递归与非递归的方式解决么?补充本题也可以不用used数组来去重(见下),因为递归的时候下一个startIndex是i+1而不是0。原创 2021-04-09 12:42:54 · 90 阅读 · 0 评论 -
【LeetCode】78. 子集 · Subsets(Medium)
78. 子集 · Subsets给一个含不同整数的集合,返回其所有的子集。子集中的元素排列必须是非降序的,解集必须不包含重复的子集。示例 1:输入:[0]输出:[ [], [0]]示例2:输入:[1,2,3]输出:[ [3], [1], [2], [1,2,3], [1,3], [2,3], [1,2], []]挑战:你可以同时用递归与非递归的方式解决么?List&l...原创 2021-04-09 12:40:52 · 147 阅读 · 0 评论 -
【LeetCode】93. 复原IP地址(Medium)
93. 复原IP地址给定一个只包含数字的字符串,复原它并返回所有可能的 IP 地址格式。有效的 IP 地址正好由四个整数(每个整数位于 0 到 255 之间组成),整数之间用 '.' 分隔说明:board 和 word 中只包含大写和小写英文字母。1 <= board.length <= 2001 <= board[i].length <= 2001 <= word.length <= 10^3例1:输入: "25525511135"原创 2021-04-08 13:51:19 · 115 阅读 · 0 评论 -
【LeetCode】81. 搜索旋转排序数组II(Medium)
81. 搜索旋转排序数组II·search-in-rotated-sorted-array-ii假设按照升序排序的数组在预先未知的某个点上进行了旋转。(例如,数组[0,1,2,4,5,6,7]可能变为[4,5,6,7,0,1,2])。搜索一个给定的目标值,如果数组中存在这个目标值,则返回它的索引,否则返回-1。示例 1:输入: nums = [2,5,6,0,0,1,2], target = 0输出: true示例2:输入: nums = [2,5,6,0,0,1,...原创 2021-04-08 13:12:47 · 139 阅读 · 0 评论 -
【LeetCode】240. 搜索二维矩阵 II (Medium)
240. 搜索二维矩阵 II编写一个高效的算法来搜索m x n矩阵 matrix 中的一个target 。该矩阵具有以下特性:每行的元素从左到右升序排列。 每列的元素从上到下升序排列。示例 1:输入: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示例 2:输入:matrix = [[1,4,7,11,15],...原创 2021-04-08 10:37:22 · 107 阅读 · 0 评论 -
【LeetCode】74. 搜索二维矩阵(Medium)
74. 搜索二维矩阵编写一个高效的算法来判断m x n矩阵中,是否存在一个目标值。该矩阵具有如下特性:每行中的整数从左到右按升序排列。每行的第一个整数大于前一行的最后一个整数。示例 1:输入:matrix = [[1,3,5,7],[10,11,16,20],[23,30,34,60]], target = 3输出:true示例 2:输入:matrix = [[1,3,5,7],[10,11,16,20],[23,30,34,60]], target = 13输出:fa..原创 2021-04-08 10:34:32 · 155 阅读 · 0 评论 -
【LeetCode】154. 寻找旋转排序数组中的最小值II(Hard)
154. 寻找旋转排序数组中的最小值II [Hard](感觉偏Medium,结合q81)假设按照升序排序的数组在预先未知的某个点上进行了旋转。( 例如,数组[0,1,2,4,5,6,7] 可能变为[4,5,6,7,0,1,2])。请找出其中最小的元素。数组中可能存在重复元素。示例 1:输入: [2,2,2,0,1]输出: 0说明:这道题是 寻找旋转排序数组中的最小值 的延伸题目。允许重复会影响算法的时间复杂度吗?会如何影响,为什么?-- 最坏O(n),平均O...原创 2021-04-08 10:26:03 · 156 阅读 · 0 评论 -
【LeetCode】153. 寻找旋转排序数组中的最小值(Medium)
153. 寻找旋转排序数组中的最小值·find_minimum_in_rotated_sorted_array假设按照升序排序的数组在预先未知的某个点上进行了旋转。( 例如,数组[0,1,2,4,5,6,7] 可能变为[4,5,6,7,0,1,2])。请找出其中最小的元素。你可以假设数组中不存在重复元素。示例 1:输入: [3,4,5,1,2]输出: 1示例 2:输入: [4,5,6,7,0,1,2]输出: 0参考题解:https://leetcode-c...原创 2021-04-08 09:43:09 · 121 阅读 · 0 评论 -
IDEA最常用快捷键汇总+快速写出Main函数
IDEA可以说是当下Java程序员日常开发的神器,但是想要发挥这款神器的牛逼威力,必须得熟练使用它的各种快捷键才行。本篇总结下使用IDEA(也就是IntelliJ IDEA )进行日常开发中最常用的快捷键。按经常使用频度,分为必备、常用、一般必备快捷键 功能介绍 Alt + Enter IntelliJ IDEA 根据光标所在问题,提供快速修复选择,光标放在的位置不同提示的结果也不同 Ctrl + D 复制光标所在行 或 复制选择内容,并把复制内容插入光标位置下面原创 2020-06-24 11:16:11 · 1637 阅读 · 0 评论 -
算法与数据结构*
学习方法:chunk it up、deliberate practicing、feedback切题四件套:Clarification、Possible solutions、Coding、Test cases数组 链表 队列 栈 堆 哈希表 树 二叉查找树 字母树 LRU缓存 递归 贪心 分治 广度优先搜索 深度优先搜索...原创 2020-06-14 11:25:07 · 185 阅读 · 0 评论 -
Eclipse代码提示设置
使用eclipse自带的插件,无需另外安装插件,具体步骤如下1.打开eclipse→Windows→Preferences→Java→Editor→Content Assist修改Auto Activation triggers for java的值为:zjava 点击apply按钮2.继续打开JavaScript→Editor→Content Assist修改Auto Activati...原创 2019-12-17 19:21:58 · 167 阅读 · 0 评论 -
【LeetCode】Binary Tree Preorder Traversal 二叉树的前序遍历(3种方法)- Easy+
二叉树的前序遍历 给出一棵二叉树,返回其节点值的前序遍历。样例 给出一棵二叉树 {1,#,2,3},1 \ 2 / 3 返回 [1,2,3].挑战 你能使用非递归实现么?3种方法:非递归、递归、分治(1)Java/** * Definition of TreeNode: * public class TreeNode { * pub原创 2017-10-16 07:56:15 · 289 阅读 · 0 评论 -
【LeetCode】Binary Tree Inorder Traversal二叉树的中序遍历 - Easy
二叉树的中序遍历 给出一棵二叉树,返回其中序遍历样例 给出二叉树 {1,#,2,3},1 \ 2 / 3 返回 [1,3,2].挑战 你能使用非递归算法来实现么?(1)Javapackage BinaryTreeTraversal;import java.util.ArrayList;import java.util.List;import j原创 2017-10-16 09:18:32 · 328 阅读 · 0 评论 -
【数据结构】面试搞定二叉树大总结-15道二叉树题
感谢以下文章的作者:BIN大神的大总结:http://blog.csdn.net/fightforyourdream/article/details/16843303 面试大总结之二:Java搞定面试中的二叉树题目以及:http://blog.csdn.net/luckyxiaoqiang/article/details/7518888转载 2017-10-16 09:22:39 · 354 阅读 · 0 评论 -
【LeetCode】Validate Binary Search Tree 验证二叉查找树 - Medium+
验证二叉查找树 给定一个二叉树,判断它是否是合法的二叉查找树(BST)一棵BST定义为:节点的左子树中的值要严格小于该节点的值。 节点的右子树中的值要严格大于该节点的值。 左右子树也必须是二叉查找树。 一个节点的树也是二叉查找树。样例一个例子: 2 / \1 4 / \ 3 5上述这棵二叉树序列化为 {2,1,4,#,#,3,5}.标签 分治法 二叉树 递归原创 2017-10-25 00:54:28 · 745 阅读 · 0 评论 -
【数据结构面试】按接口实现队列
interface InterfaceQueue { void push(int val); // define an interface for pop method /* write your code here */ // define an interface for top method /* write your code here */}publi原创 2017-10-22 10:03:31 · 366 阅读 · 0 评论 -
【LeetCode】Identical Binary Tree等价二叉树 - Easy+
等价二叉树 检查两棵二叉树是否等价。等价的意思是说,首先两棵二叉树必须拥有相同的结构,并且每个对应位置上的节点上的数都相等。样例 1 1 / \ / \ 2 2 and 2 2 / /4 4就是两棵等价的二原创 2017-10-15 19:54:56 · 345 阅读 · 0 评论 -
【LeetCode】二叉树的所有路径 - Easy(FB,Google)
二叉树的所有路径 给一棵二叉树,找出从根节点到叶子节点的所有路径。样例 给出下面这棵二叉树:1 / \ 2 3 \ 5 所有根到叶子的路径为:[ “1->2->5”, “1->3” ] 标签 二叉树 二叉树遍历 谷歌 脸书 相关题目 中等 二叉树具有相同值的最长路径/** * Definition of TreeNode: * pub原创 2017-10-15 18:58:15 · 305 阅读 · 0 评论 -
【LeetCode】Remove Nth Node From End of List 删除链表中倒数第n个节点- Easy +
删除链表中倒数第n个节点 给定一个链表,删除链表中倒数第n个节点,返回链表的头节点。注意事项 链表中的节点个数大于等于n样例 给出链表1->2->3->4->5->null和 n = 2. 删除倒数第二个节点之后,这个链表将变成1->2->3->5->null.挑战 O(n)时间复杂度标签 两根指针 链表 相关题目 入门 链表的中点 41 % 容易 在O(1)时间复杂度删除链原创 2017-10-15 12:43:29 · 245 阅读 · 0 评论 -
【LeetCode】Binary Tree Leaf Sum - Easy
二叉树叶子节点之和 计算二叉树的叶子节点之和样例 1 / \ 2 3 / 4 的叶子节点之和为 7。标签 二叉树 二叉树遍历(1)Java//package BinaryTree;////public class TreeNode {// public int val;// public TreeNode left, right;//原创 2017-10-15 11:09:55 · 257 阅读 · 0 评论 -
【LeetCode】Invert Binary Tree 翻转二叉树 - Easy++
翻转一棵二叉树样例 1 1 / \ / \2 3 => 3 2 / \ 4 4挑战 递归固然可行,能否写个非递归的?(1)Java//Version 1 : Recursionpublic class InvertBinaryTree { /* * @param root: a TreeNod原创 2017-10-22 16:08:44 · 277 阅读 · 0 评论 -
【LeetCode】BinaryTreeLevelOrderTraversal_ii 二叉树的层次遍历 II
二叉树的层次遍历 II 给出一棵二叉树,返回其节点值从底向上的层次序遍历(按从叶节点所在层到根节点所在的层遍历,然后逐层从左往右遍历)样例给出一棵二叉树 {3,9,20,#,#,15,7}, 3 / \ 9 20 / \ 15 7按照从下往上的层次遍历为:[ [15,7], [9,20], [3]]标签 队列 二叉树 二叉树遍历 宽原创 2017-10-22 14:40:48 · 242 阅读 · 0 评论 -
【LeetCode】Minimum Depth Of Binary Tree二叉树的最小深度 - Easy
二叉树的最小深度 给定一个二叉树,找出其最小深度。二叉树的最小深度为根节点到最近叶子节点的距离。样例给出一棵如下的二叉树: 1 / \ 2 3 / \ 4 5 这个二叉树的最小深度为 2标签 二叉树 深度优先搜索(1)Javapackage BinaryTree;import java.uti原创 2017-10-21 19:49:31 · 219 阅读 · 0 评论 -
【LeetCode】Binary Tree Zigzag Level Order Traversal 二叉树的锯齿形层次遍历 - Medium(LinkedIn)
二叉树的锯齿形层次遍历 给出一棵二叉树,返回其节点值的锯齿形层次遍历(先从左往右,下一层再从右往左,层与层之间交替进行) 样例给出一棵二叉树 {3,9,20,#,#,15,7}, 3 / \ 9 20 / \ 15 7返回其锯齿形的层次遍历为:[ [3], [20,9], [15,7]]标签 队列 领英 二叉树 二叉树遍历 宽度优先搜索(1原创 2017-10-25 00:58:58 · 343 阅读 · 0 评论 -
【LeetCode】N-Queens N皇后 - Medium
n皇后问题是将n个皇后放置在n*n的棋盘上,皇后彼此之间不能相互攻击。 给定一个整数n,返回所有不同的n皇后问题的解决方案。 每个解决方案包含一个明确的n皇后放置布局,其中”Q”和”.”分别表示一个女王和一个空位置。样例 对于4皇后问题存在两种解决的方案: [ [“.Q..”, // Solution 1 “…Q”, “Q…”, “..Q....原创 2018-03-07 15:40:43 · 203 阅读 · 0 评论 -
【LeetCode】Longest Palindrome(最长回文串) - Easy
最长回文串 给出一个包含大小写字母的字符串。求出由这些字母构成的最长的回文串的长度是多少。数据是大小写敏感的,也就是说,”Aa” 并不会被认为是一个回文串。i 注意事项假设字符串的长度不会超过 1010。样例 给出 s = “abccccdd” 返回 7一种可以构建出来的最长回文串方案是 “dccaccd”。标签 哈希表 亚马逊分析: 回文串:找到有重复的元素就可以组成回文串 + 中间可以有原创 2017-08-26 13:35:49 · 537 阅读 · 0 评论 -
【LeetCode】Jump Game II 跳跃游戏II - 贪心 Medium
跳跃游戏 II 给出一个非负整数数组,你最初定位在数组的第一个位置。 数组中的每个元素代表你在那个位置可以跳跃的最大长度。 你的目标是使用最少的跳跃次数到达数组的最后一个位置。 样例 给出数组A = [2,3,1,1,4],最少到达数组最后一个位置的跳跃次数是2(从数组下标0跳一步到数组下标1,然后跳3步到数组的最后一个位置,一共跳跃2次) 标签 贪心 数组(1)Jav...原创 2018-03-26 13:59:52 · 1782 阅读 · 0 评论 -
【LeetCode】Jump Game 跳跃游戏 - 贪心 - Medium
给出一个非负整数数组,你最初定位在数组的第一个位置。 数组中的每个元素代表你在那个位置可以跳跃的最大长度。 判断你是否能到达数组的最后一个位置。 注意事项 这个问题有两个方法,一个是贪心和 动态规划。 贪心方法时间复杂度为O(N)。 动态规划方法的时间复杂度为为O(n^2)。 我们手动设置小型数据集,使大家可以通过测试的两种方式。这仅仅是为了让大家学会如何使用动态规划...原创 2018-03-26 09:20:48 · 247 阅读 · 0 评论 -
【LeetCode】Generate Parenthesis - Medium
给定 n 对括号,请写一个函数以将其生成新的括号组合,并返回所有组合结果。样例 给定 n = 3, 可生成的组合如下: “((()))”, “(()())”, “(())()”, “()(())”, “()()()”标签 递归 回溯法 字符串处理 谷歌 Zenefits相关题目 容易有效的括号序列27 %中等 不同的二叉查找树 II33 %中等(1)Javap...原创 2018-03-06 17:24:49 · 198 阅读 · 0 评论 -
【LeetCode】Combination Sum - Medium
数字组合给出一个候选数字的set(C)和目标数字(T),找到C中所有的组合,使找出的数字和为T。C中的数字可以无限制重复被选取。例如,给出候选数组[2,3,6,7]和目标数字7,所求的解为:[7],[2,2,3]注意事项 所有的数字(包括目标数字)均为正整数。 元素组合(a1, a2, … , ak)必须是非降序(ie, a1 ≤ a2 ≤ … ≤ ak)。 解集不能包含...原创 2018-03-05 17:16:31 · 134 阅读 · 0 评论