- 博客(34)
- 资源 (9)
- 收藏
- 关注
原创 力扣---2020.5.19
680. 验证回文字符串 Ⅱclass Solution { public boolean validPalindrome(String s) { int left = 0; int right = s.length()-1; while(left<right){ if(s.charAt(left)!=s.charAt(right)){ return isValid(s,left+1,ri
2020-07-30 17:21:40 172
原创 《淘宝技术这十年》之读书笔记
技术的出现是为了解决业务场景中的一些难题,而业务的发展有推动着技术的进步,二者相互依存,共同进步。任何牛B的人,曾经都有过一段苦B的生活,也正是这些非同寻常的经历,奠定了未来他们更长远的发展,使他们成为与众不同的人。多思考,动手之前先思考。你知道的越多,你不知道的越多。...
2020-07-30 14:45:27 283
原创 力扣---2020.5.18
152. 乘积最大子数组class Solution { public int maxProduct(int[] nums) { if(nums.length==0){ return 0; } int[] dpMax = new int[nums.length]; dpMax[0] = nums[0]; int[] dpMin = new int[nums.length]; d
2020-07-29 19:13:26 174
原创 如何寻找最长回文子串
5. 最长回文子串原题地址class Solution { public String longestPalindrome(String s) { String res = ""; for (int i = 0; i < s.length(); i++) { // 以 s[i] 为中心的最长回文子串 String s1 = palindrome(s, i, i); // 以 s[i.
2020-07-28 17:27:27 151
原创 如何去除有序数组/链表的重复元素
26. 删除排序数组中的重复项原题地址class Solution { public int removeDuplicates(int[] nums) { if(nums.length==0){ return 0; } int slow = 0; int fast = 1; while(fast<nums.length){ if(nums[slow] != n
2020-07-28 17:26:55 172
原创 如何实现LRU算法
146. LRU缓存机制原题地址class LRUCache extends LinkedHashMap<Integer, Integer>{ private int capacity; public LRUCache(int capacity) { super(capacity, 0.75F, true); this....
2020-07-28 17:26:15 153
原创 梯度下降法(Gradient Descent)
梯度下降法(英语:Gradient descent)是一个一阶最优化算法。 要使用梯度下降法找到一个函数的局部极小值,必须向函数上当前点对应梯度(或者是近似梯度)的反方向的规定步长距离点进行迭代搜索。如果相反地向梯度正方向迭代进行搜索,则会接近函数的局部极大值点;这个过程则被称为梯度上升法。梯度下降法是最早最简单,也是最为常用的最优化方法。梯度下降法实现简单,当目标函数是凸函数时,梯度下降法的解是全局解。一般情况下,其解不保证是全局最优解,梯度下降法的速度也未必是最快的。梯度下降法的优化思想是用当.
2020-07-28 17:24:45 4313
原创 HashMap相关知识(持续补充中...)
什么是哈希表呢?在JDK1.8之前,哈希表底层采用数组+链表实现,即使用数组处理冲突,同一hash值的链表都存储在一个数组里。但是当位于一个桶中的元素较多,即hash值相等的元素较多时,通过key值依次查找的效率较低。而JDK1.8中,哈希表存储采用数组+链表+红黑树实现,当链表长度超过阈值(8)时,将链表转换为红黑树,这样大大减少了查找时间。简单的来说,哈希表是由数组+链表+红黑树(JDK1...
2020-07-28 17:22:27 157
原创 BFPTR排序算法(O(n)时间复杂度)
BFPTR算法,又称为中位数的中位数算法,它的最坏时间复杂度为O(n),它是由Blum、Floyd、Pratt、Rivest、Tarjan提出。该算法的思想是修改快速选择算法的主元选取方法,提高算法在最坏情况下的时间复杂度。...
2020-07-28 17:20:53 511
原创 深入理解JVM虚拟机之内存管理
Java虚拟机运行时数据区域64位长度的long和double类型的数据会占用2个局部变量空间(Slot),其余数据类型只占用一个。
2020-07-28 17:18:57 166
原创 深入理解JVM虚拟机之程序编译与优化
你知道的越多,你不知道的越多。有道无术,术尚可求,有术无道,止于术。如有其它问题,欢迎大家留言,我们一起讨论,一起学习,一起进步
2020-07-28 17:17:56 120
原创 深入理解JVM虚拟机之高效并发
你知道的越多,你不知道的越多。有道无术,术尚可求,有术无道,止于术。如有其它问题,欢迎大家留言,我们一起讨论,一起学习,一起进步
2020-07-28 17:17:21 208
原创 力扣---2020.5.17
210. 课程表 IIclass Solution { // 方法 1 最简单的 BFS public int[] findOrder(int numCourses, int[][] prerequisites) { if (numCourses == 0) return new int[0]; int[] inDegrees = new int[numCourses]; // 建立入度表 for (int[] p :
2020-07-27 18:36:36 154
原创 力扣---2020.5.16
25. K 个一组翻转链表class Solution { public ListNode reverseKGroup(ListNode head, int k) { if(head==null){ return null; } ListNode a,b; a = b = head; for(int i = 0;i<k;i++){ if(b==null) retur
2020-07-26 09:05:46 126
原创 力扣---2020.5.15
560. 和为K的子数组class Solution { public int subarraySum(int[] nums, int k) { int len = nums.length; int[] preSum = new int[len+1]; preSum[0] = 0; for(int i = 0;i<len;i++){ preSum[i+1] = preSum[i] + nums[i];
2020-07-25 14:49:16 147
原创 力扣---2020.5.14
136. 只出现一次的数字class Solution { public int singleNumber(int[] nums) { int map = new HashMap<>(); for(int num:nums){ map.put(num,map.getOrDefault(num,0)+1); } for(int n:map.keySet()){ if(map.
2020-07-25 00:01:52 158
原创 力扣---2020.5.13
102. 二叉树的层序遍历class Solution { public List<List<Integer>> levelOrder(TreeNode root) { List<List<Integer>> list = new ArrayList<>(); Queue<TreeNode> queue =new LinkedList<>(); if(root!=nu
2020-07-23 17:39:29 128
原创 力扣---2020.5.12
155. 最小栈class MinStack { int min = Integer.MAX_VALUE; Stack<Integer> stack = new Stack<>(); /** initialize your data structure here. */ public MinStack() { } public void push(int x) { if(x<=min){
2020-07-15 21:57:23 112
原创 力扣---2020.5.11
50. Pow(x, n)//快速幂class Solution { public double myPow(double x, int n) { if(x == 0.0f) return 0.0d; long b = n; double res = 1.0; if(b < 0) { x = 1 / x; b = -b; } while(b >
2020-07-14 20:36:49 146
原创 力扣---2020.5.10
236. 二叉树的最近公共祖先class Solution { public TreeNode lowestCommonAncestor(TreeNode root, TreeNode p, TreeNode q) { if(root==null || root==p || root==q){ return root; } TreeNode left = lowestCommonAncestor(root.left,p,q);
2020-07-13 19:47:07 155
原创 力扣---2020.5.9
69. x 的平方根牛顿法class Solution { public int mySqrt(int x) { long a = x; while(a*a > x){ a = (a + x/a) / 2; } return (int)a; }}二分法class Solution { public int mySqrt(int x) { long left
2020-07-12 22:56:58 139
原创 力扣---2020.5.8
221. 最大正方形class Solution { public int maximalSquare(char[][] matrix) { int m = matrix.length; if(m<1){ return 0; } int n = matrix[0].length; //正方形的边长 int brim = 0; int[][]
2020-07-11 21:18:34 137
原创 Spring Boot Components详解
文章目录四大核心ComponentsSpring Boot StarterSpring Boot AutoConfiguratorSpring Boot CLISpring Boot Actuator四大核心ComponentsSpring Boot StartersSpring Boot AutoConfiguratorSpring Boot CLI(Command Line Interface)Spring Boot ActuatorSpring Boot StarterSprin
2020-07-11 15:39:27 602 1
原创 力扣---2020.5.7
572. 另一个树的子树class Solution { public boolean isSubtree(TreeNode s, TreeNode t) { if(s==null) return false; return isSubFrom(s,t) || isSubtree(s.left,t) || isSubtree(s.right,t); ...
2020-07-10 20:23:35 77
原创 Java操作Excel的几种方式(内有示例代码)
Poi<dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.17</version> </dependency> //下面是07(xlsx)版本的,上面是03(xls) <dependency> <groupId>org.a
2020-07-10 09:35:40 1634
原创 【CSS】父级边框塌陷问题解决方案
代码示范<body> <div id="father"> <div class="layer01"><img src="img/1.jpg" alt=""></div> <div class="layer02"><img src="img/2.jpg" alt=""></div> <div class="layer03
2020-07-09 22:16:41 945
原创 力扣---2020.5.6
983. 最低票价class Solution { public int mincostTickets(int[] days, int[] costs) { int len = days.length, maxDay = days[len - 1], minDay = days[0]; int[] dp = new int[maxDay + 31]; //...
2020-07-09 21:27:07 154
原创 力扣---2020.5.5
98. 验证二叉搜索树class Solution { long prev = Long.MIN_VALUE; public boolean isValidBST(TreeNode root) { if(root==null){ return true; } if(!isValidBST(root.left)...
2020-07-08 20:20:54 162
原创 Java内存模型(JMM)
文章目录Java内存模型(JMM)问题分析JMM模型下的线程间通信:Java内存模型(JMM)概述:JMM(Java Memory Model)Java内存模型,是java虚拟机规范中所定义的一种内存模型。Java内存模型(Java Memory Model)描述了Java程序中各种变量(线程共享变量)的访问规则,以及在JVM中将变量存储到内存和从内存中读取变量这样的底层细节。所有的共享变量都存储于主内存。这里所说的变量指的是实例变量和类变量。不包含局部变量,因为局部变量是线程私有的,因此不存在竞
2020-07-07 22:34:38 491
原创 力扣---2020.5.4
45. 跳跃游戏 IIclass Solution { public int jump(int[] nums) { if(nums.length == 1) return 0; int reach = 0; int nextreach = nums[0]; int step = 0; for(int i = ...
2020-07-07 20:50:33 133
原创 力扣---2020.5.3
53. 最大子序和//贪心算法class Solution { public int maxSubArray(int[] nums) { int res = nums[0]; int sum = 0; for(int num:nums){ if(sum>0){ sum += n...
2020-07-06 22:56:49 94
原创 力扣---2020.5.2
3. 无重复字符的最长子串原题地址class Solution { public int lengthOfLongestSubstring(String s) { if(s.length()==0) return 0; HashMap<Character,Integer> map = new HashMap<>(); ...
2020-07-05 18:25:30 79
原创 力扣---2020.5.1
21. 合并两个有序链表class Solution { public ListNode mergeTwoLists(ListNode l1, ListNode l2) { ListNode dummyHead = new ListNode(-1); ListNode curr = dummyHead; while(l1!=null &am...
2020-07-04 22:00:52 97
15856_eec3d8ce85-背包问题知识框架图.png
2020-05-11
新型肺炎实战.zip
2020-04-06
天池工业蒸汽.zip
2020-04-06
少年的你评论数据分析.zip
2020-04-06
金融反欺诈实战.zip
2020-04-06
国庆档电影数据分析.zip
2020-04-06
git常用命令.txt
2020-04-06
Spring-AOP.zip
2020-04-06
mantisbt-2.24.0.tar.gz
2020-04-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人