自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

wake_alone

从入门到放弃

  • 博客(194)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

转载 leetcode 4. 寻找两个正序数组的中位数

给定两个大小分别为 m 和 n 的正序(从小到大)数组 nums1 和 nums2。请你找出并返回这两个正序数组的 中位数 。 算法的时间复杂度应该为 O(log (m+n)) 。 示例 1: 输入:nums1 = [1,3], nums2 = [2] 输出:2.00000 解释:合并数组 = [1,2,3] ,中位数 2 示例 2: 输入:nums1 = [1,2], nums2 = [3,4] 输出:2.50000 解释:合并数组 = [1,2,3,4] ,中位数 (2 + 3) / 2 = 2.5 .

2022-05-19 10:23:37 332 1

原创 逻辑回归原理和公式推导

参考 数学推导 《深度学习推荐系统》 流程 将用户年龄、性别、物品属性、物品描述、当前时间、当前地点等特征转换成数值型特征向量。 确定逻辑回归模型的优化目标(以优化“点击率”为例), 利用已有样本数据对逻辑回归模型中训练。 在模型服务阶段,将特征向量输入逻辑回归模型,经过逻辑回归模型的推断,得到用户点击(这里用点击作为推荐系统中反馈行为的例子)物品的概率。 利用“点击”概率对所有获选物品进行排序,得到推荐列表。 数学推导 见链接1 ...

2022-04-17 10:48:28 928

原创 leetcode 142. 环形链表 II

给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。注意,pos 仅仅是用于标识环的情况,并不会作为参数传递到函数中。 说明:不允许修改给定的链表。 进阶: 你是否可以使用 O(1) 空间解决此题? 思路 快慢指针,相遇后再从头去执行 /** * Definition for singly-linked list. * class.

2021-08-09 18:29:44 283

原创 Elastic search常用分词 和 多字段搜索优化

分词器 ES的分词器把文本解析为一个一个的词,写入倒排索引中 filter过滤器 lemmagen 词性还原 stop 停顿词 shingle 临近词n个作为一组查询 analyzer分词器 standard标准分词器 多字段搜索优化 bool 查询采取 more-matches-is-better 匹配越多越好的方式,所以每条 match 语句的评分结果会被加在一起,从而为每个文档提供最终的分数 _score 。 boost 权重 { "multi_match": { "q

2021-08-09 13:15:36 1579

原创 leetcode 11. 盛最多水的容器

盛最多水的容器 给你 n 个非负整数 a1,a2,…,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0) 。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。 说明:你不能倾斜容器。 示例 1: 输入:[1,8,6,2,5,4,8,3,7] 输出:49 解释:图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。在此情况下,容器能够容纳水(表示为蓝色部分)的最大值为 49。 示..

2021-08-08 15:18:35 500

原创 分布式锁总结

原理和场景 现在的微服务、分布式遇见的一个问题是: 在后端多个服务(一个服务分布式部署、多个微服务)中,经常会遇到临界变量的竞争,使得我们需要用分布式锁锁住临界变量,保证并发场景下逻辑的原子性 分布式锁应该具备哪些条件 在分析分布式锁的三种实现方式之前,先了解一下分布式锁应该具备哪些条件: 1、在分布式系统环境下,一个方法在同一时间只能被一个机器的一个线程执行; 2、高可用的获取锁与释放锁; 3、高性能的获取锁与释放锁; 4、具备可重入特性; 5、具备锁失效机制,防止死锁; 6、具备非阻塞锁特性,即没有获取

2021-08-01 18:09:27 228

原创 JZ32 把数组排成最小的数

描述 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。 示例1 输入: [3,32,321] 返回值: “321323” 思路1:全排列 全排列然后排序取最小 import java.util.ArrayList; import java.util.Collections; import java.util.HashSet; import java.util.LinkedHas.

2021-07-31 21:24:25 181

原创 JZ31 整数中1出现的次数(从1到n整数中1出现的次数)

描述 输入一个整数 n ,求1~n这n个整数的十进制表示中1出现的次数 例如,1~13中包含1的数字有1、10、11、12、13因此共出现6次 示例1 输入: 13 返回值: 6 思路1:暴力循环 就不写了 思路2:按位遍历 https://leetcode-cn.com/problems/1nzheng-shu-zhong-1chu-xian-de-ci-shu-lcof/submissions/ public class Solution { public static void main.

2021-07-29 23:41:35 184

原创 leetcode496 503 下一个更大的元素 Ⅰ Ⅱ Ⅲ

leetcode496 下一个更大的元素Ⅰ 给你两个 没有重复元素 的数组 nums1 和 nums2 ,其中nums1 是 nums2 的子集。 请你找出 nums1 中每个元素在 nums2 中的下一个比其大的值。 nums1 中数字 x 的下一个更大元素是指 x 在 nums2 中对应位置的右边的第一个比 x 大的元素。如果不存在,对应位置输出 -1 。 示例 1: 输入: nums1 = [4,1,2], nums2 = [1,3,4,2]. 输出: [-1,3,-1] 解释: 对于 num1

2021-07-24 00:13:03 330

原创 leetcode 下一个更大元素 III

给你一个正整数 n ,请你找出符合条件的最小整数,其由重新排列 n 中存在的每位数字组成,并且其值大于 n 。如果不存在这样的正整数,则返回 -1 。 注意 ,返回的整数应当是一个 32 位整数 ,如果存在满足题意的答案,但不是 32 位整数 ,同样返回 -1 。 示例 1: 输入:n = 12 输出:21 示例 2: 输入:n = 21 输出:-1 思路 从右往左找到降序的位置i 因为从i+1到length-1已经是升序了 再从右往左找到大于a[i]的位置j 替换a[i]和a[j] 现在已经满足更大的.

2021-07-21 19:34:32 308

原创 最长回文子串

给你一个字符串 s,找到 s 中最长的回文子串。 示例 1: 输入:s = “babad” 输出:“bab” 解释:“aba” 同样是符合题意的答案。 示例 2: 输入:s = “cbbd” 输出:“bb” 示例 3: 输入:s = “a” 输出:“a” 示例 4: 输入:s = “ac” 输出:“a” 思路 动态规划 dp[i][j] 表示 s[i…j] 是否是回文串 dp[i][j] = dp[i + 1][j - 1]; class Solution { public String lon.

2021-07-21 18:39:01 117

原创 圆环回原点问题

圆环上有10个点,编号为0~9。从0点出发,每次可以逆时针和顺时针走一步,问走n步回到0点共有多少种走法。 输入: 2 输出: 2 解释:有2种方案。分别是0->1->0和0->9->0 走i步走到j的有n中方法 等于 {走i-1步到 j-1} + {走 i-1步到j+1} dp[i][j] = dp[i-1][j-1] + dp[i-1][j+1]; 因为有回环,所以需要走到j-1可能为负数 dp[i][j] = dp[i-1][(j-1+length)%length] .

2021-07-20 01:03:04 866

原创 JZ62 二叉搜索树的第k个结点

描述 给定一棵二叉搜索树,请找出其中的第k小的TreeNode结点。 示例1 输入: {5,3,7,2,4,6,8},3 返回值: 4 说明: 按结点数值大小顺序第三小结点的值为4 思路1:递归 /* public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { this.val = val; .

2021-07-19 01:34:31 137

原创 JZ30 连续子数组的最大和

描述 输入一个整型数组,数组里有正数也有负数。数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。要求时间复杂度为 O(n). 示例1 输入: [1,-2,3,10,-4,7,2,-5] 复制 返回值: 18 复制 说明: 输入的数组为{1,-2,3,10,—4,7,2,一5},和最大的子数组为{3,10,一4,7,2},因此输出为该子数组的和 18。 思路1: dp动态规划 dp[i] = max{dp[i-1] + array[i], array[i]} public class S.

2021-07-18 21:33:07 125

原创 MySQL RR/RC级别下DML写后读

MVCC MVCC Acronym for “multiversion concurrency control”. This technique lets InnoDB transactions with certain isolation levels perform consistent read operations; that is, to query rows that are being updated by other transactions, and see the values fro

2021-07-18 18:30:12 291

原创 JZ38 二叉树的深度

描述 输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。 示例1 输入: {1,2,3,4,5,#,6,#,#,7} 复制 返回值: 4 思路1:分治 /** public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { this..

2021-07-17 14:31:00 138

原创 JZ28 数组中出现次数超过一半的数字

描述 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组[1,2,3,2,2,2,5,4,2]。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。你可以假设数组是非空的,并且给定的数组总是存在多数元素。1<=数组长度<=50000 示例1 输入: [1,2,3,2,2,2,5,4,2] 复制 返回值: 2 复制 示例2 输入: [3,3,3,3,2,2,2] 复制 返回值: 3 复制 示例3 输入: [1] 复制 返回值: 1 复制 思路 .

2021-07-04 20:09:27 256

原创 JZ27 字符串的排列 ---JAVA实现

描述 输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则按字典序打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。 输入描述: 输入一个字符串,长度不超过9(可能有字符重复),字符只包括大小写字母。 思路 按照剑指offer上的递归方法 import java.util.ArrayList; import java.util.HashSet; import java.util.LinkedHashSet; public class

2021-07-04 18:28:07 165

原创 leetcode146. LRU缓存机制

LRU缓存机制 运用你所掌握的数据结构,设计和实现一个 LRU (最近最少使用) 缓存机制。它应该支持以下操作: 获取数据 get 和 写入数据 put 。 获取数据 get(key) - 如果关键字 (key) 存在于缓存中,则获取关键字的值(总是正数),否则返回 -1。 写入数据 put(key, value) - 如果关键字已经存在,则变更其数据值;如果关键字不存在,则插入该组「关键字/值」。当缓存容量达到上限时,它应该在写入新数据之前删除最久未使用的数据值,从而为新的数据值留出空间。 进阶: .

2020-10-25 14:12:01 179

原创 leetcode133. 克隆图

克隆图 给你无向 连通 图中一个节点的引用,请你返回该图的 深拷贝(克隆)。 图中的每个节点都包含它的值 val(int) 和其邻居的列表(list[Node])。 class Node { public int val; public List neighbors; } 测试用例格式: 简单起见,每个节点的值都和它的索引相同。例如,第一个节点值为 1(val = 1),第二个节点值为 2(val = 2),以此类推。该图在测试用例中使用邻接列表表示。 邻接列表 是用于表示有限图的无序列表的集合。每个列.

2020-09-15 22:10:53 169

原创 leetcode80. 删除排序数组中的重复项 II

给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素最多出现两次,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。 示例 1: 给定 nums = [1,1,1,2,2,3], 函数应返回新长度 length = 5, 并且原数组的前五个元素被修改为 1, 1, 2, 2, 3 。 你不需要考虑数组中超出新长度后面的元素。 示例 2: 给定 nums = [0,0,1,1,1,1,2,3,3], 函数应返回新长度 length =

2020-09-14 23:23:38 321

原创 leetcode79. 单词搜索

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

2020-09-14 22:31:00 145

原创 InvalidConnectionAttributeException: The server time zone value unrecognized or represents more

mysql 8.0 版本需要设置时区 问题 com.mysql.cj.exceptions.InvalidConnectionAttributeException: The server time zone value '�й���׼ʱ��' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the 'serverTimezone' c

2020-06-14 15:51:25 256 1

原创 对InterruptedException的处理

ibm参考链接 阻塞方法 一个方法会被打断,那么一定是阻塞方法 阻塞方法不仅受限于CPU、内存,还受限于其他操作系统事件:时间片过期、I/O阻塞、其他线程的操作(锁释放、临界资源-标识位的改变、工作队列上新增的任务等) 阻塞性方法可能会死循环,所以一般的操作都是可打断的,也就意味着不是原子的 线程中断 线程6种状态与interrupt方法 线程有一个boolean字段,表示interrupted状态 如果线程在执行低优先级的阻塞方法(Thread.sleep(),Thread.join(),Objec

2020-06-01 19:17:23 404

原创 spring boot学习之路(一)第一个spring web项目

因为基础知识不足,踩了很多坑 spring boot资料 spring boot官方文档 spring boot实战 建立项目 软件安装 IDEA、tomcat 步骤 只说关键点了 IDEA 里 file->new->project 如果是新手,只需要勾选web即可 建立目录 . |____web | |____ctrl | | |____HelloController.java |____DemoApplication.java 这个结构不能错,否则 报错: Whitelabel Er

2020-05-29 00:38:54 247

原创 Comparator和Comparable示例

import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import java.util.ArrayList; import java.util.Collections; import java.util.List; /** * @author xiechao01 */ ...

2020-01-21 17:36:15 263

原创 Mysql语句---group by/having, inner join, left join , right join

计算a、b两个表中,值相等的某一列的数量 group by … count() 创建分组并且用聚集函数进行计算 inner join—同时存在 内联结—在两个表的交集中进行操作 select a.id,COUNT(b.Id ) from a right outer join a ON a.** = b.** group by material.id; 取得a,b两个表 相等的**列的值。每个值都同...

2020-01-10 16:48:25 473

原创 Mysql 数据库连接、访问、增删查改

Mysql数据库常用操作 Mysql建库、建表 CREATE DATABASE spring_jdbc_test; DROP TABLE IF EXISTS `question_validate_log`; CREATE TABLE IF NOT EXISTS `student`( `id` int unsigned auto_increment, `name` VARCHAR(...

2019-11-19 18:21:58 186

原创 数据库学习记录

B/B+/B-树 https://blog.youkuaiyun.com/sunshine_lyn/article/details/82747596 https://www.cnblogs.com/liuqing576598117/p/11264243.html https://blog.youkuaiyun.com/qq_26222859/article/details/80631121 聚簇索引和非聚簇索引 http...

2019-11-10 12:07:29 168

原创 使用Arrays.asList异常java.lang.UnsupportedOperationException: null at java.util.AbstractList.add

现象 public class ArrayListTest { public static void main(String[] args) { List<Integer> a = Arrays.asList(1, 2); a.add(3); System.out.println(a); } } 会产...

2019-10-18 12:03:17 1000 1

原创 latex入门(一)——latex网站overleaf

latex本身是一个高质量的排版系统。 科普链接: wiki百科 宏包说明文档网站 中文latex论坛 上面这三个网站是我经常参考的,但是最牛逼的网站,还是overleaf,在线latex编辑网站。 overleaf 这个网站可以省去繁杂的环境配置,并且可以实时渲染 进入可以看到满目琳琅的latex知识,首先从30min入门开始: 30min入门latex 很少有人愿意花30min去读英文文献。首...

2019-10-08 18:59:54 11534

原创 java8实战---函数式接口的理解

代码 import java.io.BufferedReader; import java.io.FileReader; import java.io.IOException; public class Main { @FunctionalInterface public interface BufferedReaderProcessor { String pro...

2019-07-07 14:04:25 403

原创 java正则表达式

正则表达式 符号 含义 \ 将下一字符标记为特殊字符、文本、反向引用或八进制转义符。例如,“n"匹配字符"n”。"\n"匹配换行符。序列"\\“匹配”\","\(“匹配”("。 ^ 匹配输入字符串开始的位置。如果设置了 RegExp 对象的 Multiline 属性,^ 还会与"\n"或"\r"之后的位置匹配。 $ 匹配输入字符串结尾的位置。如果设置了 RegExp 对象的...

2019-05-20 18:59:21 274

原创 IT书籍电子书下载网站

终于转正了,要好好学习工作~~~ 推荐一个IT书籍电子书下载网站:https://itbook.download/ 挺好的网站,里面分门别类,语言类,计算机基础类,算法类, 很多经典书籍,甚至一些2018年底新的书籍都有, 良心网站,恨自己学生时代没有找到这个网站~ 需要看的书太多,全部都买不现实,搬家也是麻烦~~~ 北漂伤不起。推荐给大家。 ...

2019-04-26 10:40:31 14946 2

原创 latex入门---第三章 文档元素

3.1 章节和目录 3.1.1 章节标题

2019-04-19 21:23:26 311

原创 latex入门---第二章:用Latex排版文字

2.1 语言文字和编码 ASCII编码 拓展编码 UTF-8编码 2.2 排版中文 2.2.1 xeCJK宏包 \documentclass{article} \usepackage{xeCJK} \setCJKmainfont{SimSun} \begin{document} 中文\LaTeX{}排版。 \end{document} 2.2.2 ctex宏包和文档类 ctex 宏包和文档...

2019-04-16 20:45:56 647

原创 latex入门---第一章

工作需要,学习一下latex语法,首先看一本书《106分钟了解latex2e》 这里做一份读书笔记 1.1 概述 稳定、跨平台、拓展性好 1.2 第一次使用latex \documentclass{article} \begin{document} "hello world " from \Latex \end{document} 1.2.1 引擎、格式和编译命令 引擎: 编译tex源...

2019-04-16 12:24:10 733

原创 Spring注解总结

注解 含义 @Bean 显示标注bean @RequestMapping(value=“hello”) 所有URL将以/hello开头 @Component 组件,并且创建bean—但是需要打开组建扫描功能(默认关闭) @ComponetScan 扫描多个包 @Autowired 自动依赖 @bean(name = “XXX”) 在JavaConfig中声明be...

2019-02-15 17:29:47 201

原创 mac下关闭启动tomcat

➜ ~ cd /usr/local/Cellar/tomcat/9.0.16/libexec/bin ➜ bin ll total 1616 -rw-r----- 1 david admin 34K 2 5 00:31 bootstrap.jar -rw-r----- 1 david admin 1.6K 2 5 00:32 catalina-tasks.xml -...

2019-02-12 16:07:38 207

原创 mac下intellij导入spring实战4代码并且运行

软件准备 mac下配置后段开发软件 下载gradle http://services.gradle.org/distributions/ 我的下载地址放在了 /Users/david/Documents/tool/gradle-5.2.1 配置环境变量 vim ~/.bash_profile 加入以下几行 GRADLE_HOME=***; export GRADLE_HOME export...

2019-02-11 19:11:35 1229

apue文档英文版

英文第3版

2017-05-18

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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