- 博客(68)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 LeetCode目录
LeetCode目录1. 两数之和1. 两数之和Eclipse: /LeetCode/src/_18_month10/Q1_两数之和.javaCSDN: https://blog.csdn.net/qq_39541319/article/details/89424079
2019-07-18 20:04:44
122
原创 Java1
class Sup{ //可以被继承的 public protect 的属性和方法 //不可以被继承的 private final 的属性和方法 //public 所有 //default 同一个包下 //protect 自己 子类 同一个包下 //private 自己 public String a; public void fun1(){ System...
2020-01-04 12:56:29
144
原创 mysql高级_04_索引优化案例分析
mysql高级_04_索引优化案例分析避免索引失效优化查询单表:复合索引 范围以后的索引会失效两个表: 左连接 索引应建在右表,右链接,索引在左表Join尽可能减少Join 语句中 的循环总次数,永远用小结果集驱动大结果集优先优化 内层循环保证Join语句中被驱动表上Join条件字段已经被索引当无法保证被索引且内存资源充足的前提下,不要太吝啬JoinBuffer避...
2019-08-01 10:08:16
175
原创 mysql高级_03_性能分析explain
mysql高级_03_性能分析explain能干嘛能干嘛表的读取顺序数据读取操作的操作类型哪些索引可以使用哪些索引被实际使用表之间的引用每张表有多少行被优化器查询...
2019-07-29 23:50:06
163
原创 mysql高级_01_存储引擎简介
mysql存储引擎1. 查看命令2. MySAM 和 InnoDB 对比3. 阿里使用的存储引擎 Percona1. 查看命令查看现在mysql已经提供了什么存储引擎show engines;查看当前mysql的存储引擎及默认存储引擎show variables like '%storage_engine%';2. MySAM 和 InnoDB 对比对比项...
2019-07-27 12:37:19
111
原创 mysql基础_09_视图
mysql基础_09_视图视图 : MySQL 5.0.1之后,开始提供视图功能。视图是一种虚拟存在的表,行和列的数据来自定义视图的查询中使用的表,并且是 在使用视图时动态生成的它只保存sql的逻辑,不保存查询结果。应用场景多个地方同时用到相同的查询结果该查询结果使用的sql语句比较复杂示例:# 创建视图CREATE VIEW my_viewASSELECT * ...
2019-07-25 13:42:07
115
原创 mysql基础_08_事务控制语言(TCL)
mysql基础_08_事务控制语言(TCL)1. 事务的特性(面试)2. 创建事务2.1 隐式2.2 显式2.3 使用3. 数据库的隔离级别3.1 会出现的问题3.2 数据库的四种隔离级别Transaction Control Language 事务控制语言事务:一个或一组sql语句组成一个执行单元,这个执行单元要么全部执行,要么全部不执行。1. 事务的特性(面试)原子性:...
2019-07-24 23:08:27
107
原创 mysql基础_07_数据定义语言(DDL)
mysql基础_数据定义语言DDL一、库的管理1. 库的创建2. 库的修改2.1 库名的修改2.2 修改数据库字符集3. 库的删除二、 表的管理1. 表的创建2. 表的修改2.1 修改列名2.2 修改列的类型或约束2.3 添加新列2.4 删除列2.5 修改表名3. 表的删除4. 表的复制4.1 仅仅复制表的结构4.2 复制表结构及其数据三、列的数据类型1. 数值1.1 整型1.2 小数2. 字符型...
2019-07-24 10:47:32
570
原创 LeetCode_Q120_三角形最小路径和
120. 三角形最小路径和给定一个三角形,找出自顶向下的最小路径和。每一步只能移动到下一行中相邻的结点上。例如,给定三角形:自顶向下的最小路径和为 11(即,2 + 3 + 5 + 1 = 11)。说明:如果你可以只使用 O(n) 的额外空间(n 为三角形的总行数)来解决这个问题,那么你的算法会很加分。Code(Java)使用二维数组:static class Solution ...
2019-07-18 20:06:45
110
原创 LeetCode_Q121_买卖股票的最佳时机
121. 买卖股票的最佳时机给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。如果你最多只允许完成一笔交易(即买入和卖出一支股票),设计一个算法来计算你所能获取的最大利润。注意你不能在买入股票前卖出股票。示例 1:输入: [7,1,5,3,6,4]输出: 5解释: 在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6...
2019-07-18 20:06:38
133
原创 LeetCode_Q20_有效的括号
20. 有效的括号给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。示例 1:输入: “()”输出: true示例 2:输入: “()[]{}”输出: true示例 3:输入: “(]”输出: false...
2019-07-18 20:06:22
113
原创 LeetCode_Q39_ 组合总和
39. 组合总和给定一个无重复元素的数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。candidates 中的数字可以无限制重复被选取。说明:所有数字(包括 target)都是正整数。解集不能包含重复的组合。示例 1:输入: candidates = [2,3,6,7], target = 7,所求...
2019-07-18 20:06:15
105
原创 LeetCode_Q46_全排列
46. 全排列给定一个没有重复数字的序列,返回其所有可能的全排列。示例:输入: [1,2,3]输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]Code(Java) class Solution { private List<List<Integer>> lists = new Arr...
2019-07-18 20:06:09
379
原创 LeetCode_Q38_报数
38. 报数报数序列是一个整数序列,按照其中的整数的顺序进行报数,得到下一个数。其前五项如下:1 --> 12 --> 113 --> 214 --> 12115 --> 1112211 被读作 “one 1” (“一个一”) , 即 11。11 被读作 “two 1s” (“两个一”), 即 21。21 被读作 “on...
2019-07-18 20:06:04
137
原创 LeetCode_Q198_打家劫舍
198. 打家劫舍你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。给定一个代表每个房屋存放金额的非负整数数组,计算你在不触动警报装置的情况下,能够偷窃到的最高金额。示例 1:输入: [1,2,3,1]输出: 4解释: 偷窃 1 号房屋 (金额 = 1...
2019-07-18 20:05:59
138
原创 LeetCode_Q160_交叉链表
160. 交叉链表编写一个程序,找到两个单链表相交的起始节点。如下面的两个链表:在节点 c1 开始相交。示例 1:输入:intersectVal = 8, listA = [4,1,8,4,5], listB = [5,0,1,8,4,5], skipA = 2, skipB = 3输出:Reference of the node with value = 8输入解释:相交节...
2019-07-18 20:05:52
343
原创 LeetCode_Q189_旋转数组
189. 旋转数组给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。示例 1:输入: [1,2,3,4,5,6,7] 和 k = 3输出: [5,6,7,1,2,3,4]解释:向右旋转 1 步: [7,1,2,3,4,5,6]向右旋转 2 步: [6,7,1,2,3,4,5]向右旋转 3 步: [5,6,7,1,2,3,4]示例 2:输入: [-1,-...
2019-07-18 20:05:01
163
原创 LeetCode_Q22_括号生成
22.括号生成给出 n 代表生成括号的对数,请你写出一个函数,使其能够生成所有可能的并且有效的括号组合。例如,给出 n = 3,生成结果为:["((()))","(()())","(())()","()(())","()()()&a...
2019-07-18 20:04:54
122
原创 Redis学习_持久化
Redis学习_持久化1. 持久化概述2. Redis 持久化方式2.1 RDB 方式2.1.1 什么是 RDB 方式?2.1.2 如何实现?2.1.3 总结2.2 AOF 方式2.2.1 什么是 AOF 方式2.2.2 如何实现2.2.3 总结1. 持久化概述持久化可以理解为存储,就是将数据存储到一个不会丢失的地方,如果把数据放在内存中,电脑关闭或重启数据就会丢失,所以放在内存中的数据不...
2019-05-27 16:45:32
97
原创 Redis学习_Redis事务
Redis学习_Redis事务1. 什么是Redis中的事务2. 事务操作的命令2.1 开启事务 --- multi2.2 执行事务块中的命令 --- exec2.3 放弃事务 --- discard2.4 监视一个或多个key是否被改变 --- watch2.5 取消watch监视 --- unwatch3. 事务的实现3.1 正常执行事务3.2 事务执行 exec 之前,入队命令错误(语法错误...
2019-05-27 11:44:12
121
原创 Redis学习_数据类型操作命令
Redis学习_数据类型操作命令1. 字符串类型 String1.1 基本命令1.1.1 设置值 --- set1.1.2 获得key所对应的值 --- get1.1.3 整型数 自增/自减 --- incr/decr1.1.4 字符串后追加 --- append1.2 常用命令1.2.1 字符串长度 --- strlen1.2.2 截取字符串 --- getrange1.2.3 字符串替换 -...
2019-05-26 21:03:20
226
原创 Redis学习_Redis中5种数据类型
Redis学习_Redis中5种数据类型1. 字符串 String1. 字符串 String字符串类型是Redis中最基本的数据类型,它能存储任何形式的字符串,包括二进制数据,序列化后的数据,JSON化的对象甚至是一张图片。最大 512M。...
2019-05-22 17:56:06
132
原创 Redis学习_Key的操作命令
Redis学习_Key的操作命令1. 显示当前数据库的相应key: keys2. 判断当前库中key是否存在 :exists3. 设置key生存时间: expire4. 查看 key 剩余生存时间: ttl5. 查看key对应value所存储的数据类型:type6. 删除指定键值对 : del1. 显示当前数据库的相应key: keys语法: keys 通配符作用: 显示显示当前数据库的...
2019-05-20 17:02:34
366
原创 Redis学习_Redis基本操作命令
Redis学习_Redis基本操作命令1. 沟通命令 ,查看状态 :ping2. 查看当前数据库中 key 的数目 : desize3. 修改数据库的数量4. 切换库:select5. 删除当前库的所有数据: flushdb6. 退出客户端 exit / quit1. 沟通命令 ,查看状态 :ping语法: ping作用:查看redis服务器运行是否正常, 返回 PONG 说明正常返...
2019-05-20 15:31:57
199
原创 mysql基础_06_增删改(DML)
mysql基础_增删改(DML)一、插入语句1. 语法2. 注意二、修改1. 修改单表数据1.1 语法1.2 案例2. 修改多表记录 级联修改2.1 语法2.2 案例三、 删除1. 单表删除1.1 语法2. 单表删除 级联删除2.1 语法2.2 案例3. TRUNCATE 删除全部数据4. DELETE 和 TRUNCATE 对比 (面试)数据操作语言:插入:insert修改:upda...
2019-05-12 17:29:10
99
原创 mysql基础_05_联合查询
mysql基础_联合查询一、 概述1. 语法2. 应用场景3. 特点二、 案例1. 案例1:查询部门编号>90或邮箱包含a的员工信息2. 案例2:查询中国用户中男性的信息以及外国用户中年男性的用户信息一、 概述将多条查询语句的结果合并成一个结果1. 语法 查询语句1 union 查询语句2 union ...2. 应用场景要查询的结果来自于多个表,且多个表没有直接的...
2019-05-12 15:20:06
268
原创 mysql基础_04_分页查询
mysql基础_分页查询一、概述1. 应用场景2. 语法3. 特点二、案例1. 案例1: 查询前五条员工信息2. 案例2:查询第11条——第25条3. 有奖金的员工信息,并且工资较高的前10名显示出来三、 执行顺序一、概述1. 应用场景当要显示的数据,一页显示不全,需要分页提交sql请求2. 语法 select 查询列表 from 表 [join type] join 表2 on...
2019-05-12 14:57:51
173
原创 mysql基础_03_子查询
mysql基础_子查询一、概述1. 含义2. 分类2.1 按子查询出现的位置:2.2 按结果集的行列数不同:3. 特点二、 标量子查询1. where后面2. select后面三、列子查询 (多行子查询)1. where后面四、 行子查询五、表子查询六、 相关子查询 exists一、概述1. 含义出现在其他语句中的select语句,称为子查询或内查询外部的查询语句,称为主查询或外查询...
2019-05-12 14:39:49
224
原创 mysql基础_02_连接查询
mysql基础_连接查询一、 分类1. 按年代分类:2. 按功能分类:二、 内连接1. 等值连接2. 为表起别名3. 非等值连接一、 分类1. 按年代分类:sql92标准:仅仅支持内连接sql99标准【推荐】:支持内连接+外连接(左外和右外)+交叉连接2. 按功能分类:内连接:等值连接非等值连接自连接外连接:左外连接右外连接全外连接交叉连接二、 内...
2019-05-11 18:15:18
98
原创 LeetCode_Q448_找到所有数组中消失的数字
448. 找到所有数组中消失的数字给定一个范围在 1 ≤ a[i] ≤ n ( n = 数组大小 ) 的 整型数组,数组中的元素一些出现了两次,另一些只出现一次。找到所有在 [1, n] 范围之间没有出现在数组中的数字。您能在不使用额外空间且时间复杂度为O(n)的情况下完成这个任务吗? 你可以假定返回的数组不算在额外空间内。示例:输入:[4,3,2,7,8,2,3,1]输出:[...
2019-05-09 23:17:47
119
原创 LeetCode_Q67_ 二进制求和
67. 二进制求和给定两个二进制字符串,返回他们的和(用二进制表示)。输入为非空字符串且只包含数字 1 和 0。示例 1:输入: a = “11”, b = “1”输出: “100”示例 2:输入: a = “1010”, b = “1011”输出: “10101”Code(Java) class Solution { public String addBinar...
2019-05-07 21:09:30
98
原创 Java并发_01_JMM_02_内存模型
Java并发_01_JMM_02_内存模型一、 前言1. 关于CPU缓存2. 关于Java的内存模型二、Java内存模型的抽象三、原子性四、 可见性五、 有序性六、 内存间交互操作一、 前言1. 关于CPU缓存现代计算机都可支持多任务处理,因为如果只让CPU去单任务处理的话,由于CPU的运算速度和它的存储和通信子系统速度差距太大,大多的时间都浪费在磁盘I/O、网络通信或者数据库访问上,这让...
2019-05-05 21:08:48
380
原创 LeetCode_Q221_最大正方形
221. 最大正方形在一个由 0 和 1 组成的二维矩阵内,找到只包含 1 的最大正方形,并返回其面积。示例:输入:1 0 1 0 01 0 1 1 11 1 1 1 11 0 0 1 0输出: 4解题思路动态规划,新建一个二维数组,数组元素 a[i][j]a[i][j]a[i][j] 是 以 a[i][j]a[i][j]a[i][j] 为右下角的最大正方形边数。那...
2019-05-05 10:58:20
110
原创 LeetCode_Q445_两数相加 II
445. 两数相加 II给定两个非空链表来代表两个非负整数。数字最高位位于链表开始位置。它们的每个节点只存储单个数字。将这两数相加会返回一个新的链表。你可以假设除了数字 0 之外,这两个数字都不会以零开头。进阶:如果输入链表不能修改该如何处理?换句话说,你不能对列表中的节点进行翻转。示例:输入: (7 -> 2 -> 4 -> 3) + (5 -> 6 -&g...
2019-05-04 22:34:39
117
原创 LeetCode_Q2_两数相加
2. 两数相加给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0 开头。示例:输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 ->...
2019-05-04 21:20:37
128
原创 Java并发_01_JMM_01_线程通信机制
Java并发_01_JMM_01_线程通信机制一、关于线程之间如何通信:二、 关于线程之间如何同步:Java采取的方式在并发编程中,我们需要处理两个关键的问题线程之间如何通信线程之间如何同步一、关于线程之间如何通信:常见的通信方式有两种:内存共享 和 消息传递在 内存共享 并发模型中:线程之间 共享程序的公共状态,线程之间通过读-写 内存中的公共状态来隐式的进行通信。在 消息传...
2019-05-04 16:43:34
219
原创 LeetCode_Q122_买卖股票的最佳时机 II
122. 买卖股票的最佳时机 II给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。**注意:**你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。示例 1:输入: [7,1,5,3,6,4]输出: 7解释: 在第 2 天(股票价格 = 1)的时候买入,在第 3 天(...
2019-05-02 21:53:50
101
原创 LeetCode_Q53_最大子序和
53. 最大子序和给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例:输入: [-2,1,-3,4,-1,2,1,-5,4],输出: 6解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。进阶:如果你已经实现复杂度为 O(n) 的解法,尝试使用更为精妙的分治法求解。阶梯思路方法1:动态规划设数组为 a[k]a...
2019-05-02 13:06:35
141
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人