- 博客(19)
- 收藏
- 关注
原创 LeetCode-[数组]-寻找两个数组的中位数
1. 题目给两个有序数组,找出数组归并后的中位数。小技巧设arr1 长度为 n,arr2 长度为 m。k1 = (n + m + 1) / 2 - 1; // 减1 是因为数组下标从 0 开始k2 = (n + m + 2) / 2 - 1;则两个数组归并排序后的中位数是:(k1+k2) / 2.02. 暴力解归并两个数组,再找。时间复杂度:O(M+N)空间复杂度:...
2020-01-30 17:00:16
263
原创 LeetCode-[数组]-接雨水(三种解法)
1. 暴力解法O(N^2)遍历数组,找出 i 左右两边的最大值,计算出 i 位置能存的水public int trap(int[] height) { if (height == null || height.length < 3) { return 0; } int res = 0; for ...
2020-01-19 15:19:41
618
原创 LeetCode-[动态规划]-最小编辑距离
并没有动态规划的基础,所以这里要补充自己理解的动态规划。分为三步:什么是动态规划理解这道题目,什么是最小编辑距离的算法代码怎么写1. 什么是动态规划动态规划和递归关系密切,都是大问题转化成小问题。但是有区别:递归有大量重复的步骤,而动态规划则将重复的步骤的结果记录下来,以后遇到重复的步骤就直接用结果而不重复执行步骤,这样就大量减少了时间复杂度。1. 动态规划状态方程经常长这样...
2020-01-18 23:30:12
1201
原创 LeetCode-[链表]-翻转链表
1. 双指针迭代翻转链表翻转链表和交换两个变量的操作大同小异。首先需要一个prev指针(指着当前节点的前一个节点),一个cur指针(指着当前节点)翻转链表需要注意的一点是:链表之间靠指针连接,如果贸然将某个节点的next指向其他节点,就有可能造成该节点的丢失,所以翻转链表时(单向或双向),都要注意保存它的周围环境。public ListNode reverseList(ListNode h...
2020-01-17 21:39:33
228
原创 LeetCode-[哈希链表/LRU算法]-LRU缓存机制
1. LRU算法是什么?1.1. LRU算法是一种按时间先后的缓存淘汰策略。比如手机后台可以同时开的程序为3个,则当你打开第四个时,按照lru策略,最早被打开的程序被认为是“无用的”,它被淘汰。这有点像队列,从队列头进,队列头一直是“最近”使用的应用。当队列满了,从队列尾删除。值得一提的是:队列中的应用被使用后,它就变成“最近使用”了,应该提到队列头,在写代码时要注意这一点。1.2. L...
2020-01-17 16:54:48
449
原创 LeetCode-[字符串/动态规划]-最长回文子串#5
1. 题目描述给一字符串,输出其中最长回文。如abab,最长回文为aba,或bab。2. 如何判断是否为回文?对 abcddcba 来说,分别从两头开始比对。如果两头不一样,那肯定不是。如果一样,继续比对。只需比对 length / 2 次。public static boolean isPalindromic(String s) { int len = s.len...
2019-12-27 12:41:29
112
原创 LeetCode-[数组/栈]-每日温度
1. 图解2. 代码```javapackage leetCode.temperatures;import java.util.Stack;/** * 根据每日 气温 列表,请重新生成一个列表,对应位置的输入是你需要再等待多久温度才会升高超过该日的天数。如果之后都不会升高,请在该位置用 0 来代替。 * * 例如,给定一个列表 temperatures = [73, 74,...
2019-12-21 19:15:39
197
原创 位运算符
1. 介绍移位运算符它主要包括:左移位运算符(<<)、右移位运算符(>>>)、带符号的右移位运算符(>>),移位运算符操作的对象就是二进制的位,可以单独用移位运算符来处理int型整数。(1) << 左移运算符将运算符左边的对象向左移动运算符右边指定的位数(在低位补0)(2) >> "有符号"右移运算 符将运算符左边的对象向...
2019-12-21 14:41:01
158
原创 排序算法:归并排序
1. 算法思想将一个数组分成左右两部分,左右部分都递归排好序。再把左右部分归并排序。(借助一个帮助数组)最后把帮助数组复制回原数组。2. 图解3. 代码实现package code.sort.merge;/** * 归并排序 */public class MergeSort { public static void mergeSort(int[] arr) { ...
2019-12-21 14:35:45
119
原创 java正则表达式 Look-behind group does not have an obvious maximum length
1. 正则表达式测试网站https://tool.oschina.net/regex2. 问题描述:需要解析的文本:把href里的内容提取出来 //jiadian.jd.com<a target="_blank" class="cate_menu_lk" href="//jiadian.jd.com">家用电器</a>表达式:XXX.regex("...
2019-12-19 21:21:12
3450
1
原创 深入理解cookie,机制,属性
最近学习爬虫时遇到的问题,让我必须了解cookie。1.先概括讲,什么是cookie?cookie是一种具体的东西,是浏览器存储的一种数据(一小段文本信息,kv格式)。cookie里保存的是用户登陆信息,一般包含token。用户发送请求时,携带cookie,就不用每次都输入用户名和密码地登陆。这里其实有段历史在早期,人们浏览网页是没有登陆需求的,但有了这种需求后(比如购物网站),就出现了一...
2019-12-19 15:28:09
251
原创 idea连接数据库不成功。报错08001
1.问题说明用navicat链接数据库正常,mysql控制台操作正常,但是用IDEA的数据库插件链接一直报 08001 错误。[08001] Could not create connection to database server. Attempted reconnect 3 times. Giving up. 2.原因数据库驱动包的版本问题,与当前的数据库版本不兼容(我的是mys...
2019-12-16 22:59:54
1447
原创 Typora[markdown]的使用注意:图片的位置设置
使用Typora编辑时往往要加入图片,Typora会自动保存图片到某一个文件夹。该文件夹最好是一个 .md文件,一个图片资源文件夹。否则按它默认设置,会把所有 .md文件的图片都保存到一个文件夹,这个文件夹路径一改或者被删掉,所有 .md文件都会遭殃。设置如下:这样你以后移动 .md文件时都带着这个 assets文件夹...
2019-12-16 21:10:56
1662
原创 修改了conf/settings.xml为阿里云镜像,依然从中央仓库下载
(1)解决1:先检查idea的配置(坑死)这个必须先检查,我习惯不好,一上来就百度,全是教你改配置的,全照着改了,还是没搞好。检查了下文件夹,发现大小不对劲。~/.m2/repository 已经300M了,自己安装的local_repository依然是20M(2)解决2:在pom.xml中加入<repositories> <repository>...
2019-12-16 19:57:23
1135
原创 maven工程为什么有些依赖不用写版本号?
比如<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apac...
2019-12-16 15:20:58
3138
原创 IDEA-2019.1无法导入maven3.6.2 [Unable to import maven project]
1.问题描述Unable to import maven project查看idea错误日志2019-12-09 18:33:15,132 [24622746] ERROR - #org.jetbrains.idea.maven - IntelliJ IDEA 2019.1.3 Build #IU-191.7479.19 2019-12-09 18:33:15,132 [...
2019-12-11 22:31:25
1084
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人