From 100bf5c905282831e3236d541fa5d6a104cd1f99 Mon Sep 17 00:00:00 2001 From: CyC2018 <1029579233@qq.com> Date: Fri, 8 Mar 2019 20:41:28 +0800 Subject: [PATCH] auto commit --- docs/notes/Docker.md | 3 +- docs/notes/Git.md | 3 +- docs/notes/HTTP.md | 3 +- docs/notes/Java IO.md | 3 +- docs/notes/Java 基础.md | 5 +-- docs/notes/Java 容器.md | 3 +- docs/notes/Java 并发.md | 3 +- docs/notes/Java 虚拟机.md | 3 +- docs/notes/Leetcode 题解 - 二分查找.md | 30 +++++++------- docs/notes/Leetcode 题解 - 位运算.md | 3 +- docs/notes/Leetcode 题解 - 分治.md | 7 ++-- docs/notes/Leetcode 题解 - 动态规划.md | 3 +- docs/notes/Leetcode 题解 - 双指针.md | 3 +- docs/notes/Leetcode 题解 - 哈希表.md | 19 +++++---- docs/notes/Leetcode 题解 - 图.md | 3 +- docs/notes/Leetcode 题解 - 字符串.md | 3 +- docs/notes/Leetcode 题解 - 排序.md | 3 +- docs/notes/Leetcode 题解 - 搜索.md | 3 +- docs/notes/Leetcode 题解 - 数学.md | 3 +- docs/notes/Leetcode 题解 - 数组与矩阵.md | 51 ++++++++++++------------ docs/notes/Leetcode 题解 - 栈和队列.md | 3 +- docs/notes/Leetcode 题解 - 树.md | 3 +- docs/notes/Leetcode 题解 - 目录.md | 3 +- docs/notes/Leetcode 题解 - 贪心思想.md | 3 +- docs/notes/Leetcode 题解 - 链表.md | 3 +- docs/notes/Leetcode-Database 题解.md | 3 +- docs/notes/Linux.md | 3 +- docs/notes/MySQL.md | 3 +- docs/notes/Redis.md | 3 +- docs/notes/SQL.md | 3 +- docs/notes/Socket.md | 3 +- docs/notes/代码可读性.md | 3 +- docs/notes/代码风格规范.md | 3 +- docs/notes/分布式.md | 3 +- docs/notes/剑指 offer 题解.md | 3 +- docs/notes/攻击技术.md | 3 +- docs/notes/数据库系统原理.md | 3 +- docs/notes/构建工具.md | 3 +- docs/notes/正则表达式.md | 3 +- docs/notes/消息队列.md | 3 +- docs/notes/算法.md | 3 +- docs/notes/系统设计基础.md | 3 +- docs/notes/缓存.md | 3 +- docs/notes/计算机操作系统.md | 3 +- docs/notes/计算机网络.md | 3 +- docs/notes/设计模式.md | 3 +- docs/notes/集群.md | 3 +- docs/notes/面向对象思想.md | 3 +- 48 files changed, 98 insertions(+), 143 deletions(-) diff --git a/docs/notes/Docker.md b/docs/notes/Docker.md index acbdd6f5..43c02cbb 100644 --- a/docs/notes/Docker.md +++ b/docs/notes/Docker.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [一、解决的问题](#一解决的问题) * [二、与虚拟机的比较](#二与虚拟机的比较) * [三、优势](#三优势) diff --git a/docs/notes/Git.md b/docs/notes/Git.md index 6cd8a829..de3dfb67 100644 --- a/docs/notes/Git.md +++ b/docs/notes/Git.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [集中式与分布式](#集中式与分布式) * [中心服务器](#中心服务器) * [工作流](#工作流) diff --git a/docs/notes/HTTP.md b/docs/notes/HTTP.md index 92f1846b..40906c69 100644 --- a/docs/notes/HTTP.md +++ b/docs/notes/HTTP.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [一 、基础概念](#一-基础概念) * [URI](#uri) * [请求和响应报文](#请求和响应报文) diff --git a/docs/notes/Java IO.md b/docs/notes/Java IO.md index 1c634d1d..4686d39a 100644 --- a/docs/notes/Java IO.md +++ b/docs/notes/Java IO.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [一、概览](#一概览) * [二、磁盘操作](#二磁盘操作) * [三、字节操作](#三字节操作) diff --git a/docs/notes/Java 基础.md b/docs/notes/Java 基础.md index 06f40fc4..aef744f2 100644 --- a/docs/notes/Java 基础.md +++ b/docs/notes/Java 基础.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [一、数据类型](#一数据类型) * [基本类型](#基本类型) * [包装类型](#包装类型) @@ -54,7 +53,7 @@ - double/64 - boolean/\~ -boolean 只有两个值:true、false,可以使用 1 bit 来存储,但是具体大小没有明确规定。JVM 会在编译时期将 boolean 类型的数据转换为 int,使用 1 来表示 true,0 表示 false。JVM 并不支持 boolean 数组,而是使用 byte 数组来表示 int 数组来表示。 +boolean 只有两个值:true、false,可以使用 1 bit 来存储,但是具体大小没有明确规定。JVM 会在编译时期将 boolean 类型的数据转换为 int,使用 1 来表示 true,0 表示 false。JVM 并不直接支持 boolean 数组,而是使用 byte 数组来表示 int 数组来表示。 - [Primitive Data Types](https://docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html) - [The Java® Virtual Machine Specification](https://docs.oracle.com/javase/specs/jvms/se8/jvms8.pdf) diff --git a/docs/notes/Java 容器.md b/docs/notes/Java 容器.md index c62bb02b..ff91f9cd 100644 --- a/docs/notes/Java 容器.md +++ b/docs/notes/Java 容器.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [一、概览](#一概览) * [Collection](#collection) * [Map](#map) diff --git a/docs/notes/Java 并发.md b/docs/notes/Java 并发.md index 394d6189..c1edbb2f 100644 --- a/docs/notes/Java 并发.md +++ b/docs/notes/Java 并发.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [一、线程状态转换](#一线程状态转换) * [新建(New)](#新建new) * [可运行(Runnable)](#可运行runnable) diff --git a/docs/notes/Java 虚拟机.md b/docs/notes/Java 虚拟机.md index b2a5fe69..698e6dd6 100644 --- a/docs/notes/Java 虚拟机.md +++ b/docs/notes/Java 虚拟机.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [一、运行时数据区域](#一运行时数据区域) * [程序计数器](#程序计数器) * [Java 虚拟机栈](#java-虚拟机栈) diff --git a/docs/notes/Leetcode 题解 - 二分查找.md b/docs/notes/Leetcode 题解 - 二分查找.md index 98f60142..ea8e616a 100644 --- a/docs/notes/Leetcode 题解 - 二分查找.md +++ b/docs/notes/Leetcode 题解 - 二分查找.md @@ -1,17 +1,17 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [原理](#原理) * [1. 正常实现](#1-正常实现) * [2. 时间复杂度](#2-时间复杂度) * [3. m 计算](#3-m-计算) * [4. 返回值](#4-返回值) * [5. 变种](#5-变种) -* [求开方](#求开方) -* [大于给定元素的最小元素](#大于给定元素的最小元素) -* [有序数组的 Single Element](#有序数组的-single-element) -* [第一个错误的版本](#第一个错误的版本) -* [旋转数组的最小数字](#旋转数组的最小数字) -* [查找区间](#查找区间) +* [例题](#例题) + * [1. 求开方](#1-求开方) + * [2. 大于给定元素的最小元素](#2-大于给定元素的最小元素) + * [3. 有序数组的 Single Element](#3-有序数组的-single-element) + * [4. 第一个错误的版本](#4-第一个错误的版本) + * [5. 旋转数组的最小数字](#5-旋转数组的最小数字) + * [6. 查找区间](#6-查找区间) @@ -97,7 +97,9 @@ l m h 当循环体退出时,不表示没有查找到 key,因此最后返回的结果不应该为 -1。为了验证有没有查找到,需要在调用端判断一下返回位置上的值和 key 是否相等。 -# 求开方 +# 例题 + +## 1. 求开方 [69. Sqrt(x) (Easy)](https://leetcode.com/problems/sqrtx/description/) @@ -135,7 +137,7 @@ public int mySqrt(int x) { } ``` -# 大于给定元素的最小元素 +## 2. 大于给定元素的最小元素 [744. Find Smallest Letter Greater Than Target (Easy)](https://leetcode.com/problems/find-smallest-letter-greater-than-target/description/) @@ -169,7 +171,7 @@ public char nextGreatestLetter(char[] letters, char target) { } ``` -# 有序数组的 Single Element +## 3. 有序数组的 Single Element [540. Single Element in a Sorted Array (Medium)](https://leetcode.com/problems/single-element-in-a-sorted-array/description/) @@ -204,7 +206,7 @@ public int singleNonDuplicate(int[] nums) { } ``` -# 第一个错误的版本 +## 4. 第一个错误的版本 [278. First Bad Version (Easy)](https://leetcode.com/problems/first-bad-version/description/) @@ -229,7 +231,7 @@ public int firstBadVersion(int n) { } ``` -# 旋转数组的最小数字 +## 5. 旋转数组的最小数字 [153. Find Minimum in Rotated Sorted Array (Medium)](https://leetcode.com/problems/find-minimum-in-rotated-sorted-array/description/) @@ -253,7 +255,7 @@ public int findMin(int[] nums) { } ``` -# 查找区间 +## 6. 查找区间 [34. Search for a Range (Medium)](https://leetcode.com/problems/search-for-a-range/description/) diff --git a/docs/notes/Leetcode 题解 - 位运算.md b/docs/notes/Leetcode 题解 - 位运算.md index 4c6e7c4d..2c446a1f 100644 --- a/docs/notes/Leetcode 题解 - 位运算.md +++ b/docs/notes/Leetcode 题解 - 位运算.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [原理](#原理) * [1. 基本原理](#1-基本原理) * [2. mask 计算](#2-mask-计算) diff --git a/docs/notes/Leetcode 题解 - 分治.md b/docs/notes/Leetcode 题解 - 分治.md index aaa09f60..331fed03 100644 --- a/docs/notes/Leetcode 题解 - 分治.md +++ b/docs/notes/Leetcode 题解 - 分治.md @@ -1,10 +1,9 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - -* [给表达式加括号](#给表达式加括号) +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) +* [1. 给表达式加括号](#1-给表达式加括号) -# 给表达式加括号 +# 1. 给表达式加括号 [241. Different Ways to Add Parentheses (Medium)](https://leetcode.com/problems/different-ways-to-add-parentheses/description/) diff --git a/docs/notes/Leetcode 题解 - 动态规划.md b/docs/notes/Leetcode 题解 - 动态规划.md index 0a7a3cdb..6ef0d76a 100644 --- a/docs/notes/Leetcode 题解 - 动态规划.md +++ b/docs/notes/Leetcode 题解 - 动态规划.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [斐波那契数列](#斐波那契数列) * [爬楼梯](#爬楼梯) * [强盗抢劫](#强盗抢劫) diff --git a/docs/notes/Leetcode 题解 - 双指针.md b/docs/notes/Leetcode 题解 - 双指针.md index 343bc680..ead999f7 100644 --- a/docs/notes/Leetcode 题解 - 双指针.md +++ b/docs/notes/Leetcode 题解 - 双指针.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [有序数组的 Two Sum](#有序数组的-two-sum) * [两数平方和](#两数平方和) * [反转字符串中的元音字符](#反转字符串中的元音字符) diff --git a/docs/notes/Leetcode 题解 - 哈希表.md b/docs/notes/Leetcode 题解 - 哈希表.md index 63788a8f..95a1772e 100644 --- a/docs/notes/Leetcode 题解 - 哈希表.md +++ b/docs/notes/Leetcode 题解 - 哈希表.md @@ -1,9 +1,8 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - -* [数组中两个数的和为给定值](#数组中两个数的和为给定值) -* [判断数组是否含有重复元素](#判断数组是否含有重复元素) -* [最长和谐序列](#最长和谐序列) -* [最长连续序列](#最长连续序列) +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) +* [1. 数组中两个数的和为给定值](#1-数组中两个数的和为给定值) +* [2. 判断数组是否含有重复元素](#2-判断数组是否含有重复元素) +* [3. 最长和谐序列](#3-最长和谐序列) +* [4. 最长连续序列](#4-最长连续序列) @@ -14,7 +13,7 @@ - Java 中的 **HashMap** 主要用于映射关系,从而把两个元素联系起来。HashMap 也可以用来对元素进行计数统计,此时键为元素,值为计数。和 HashSet 类似,如果元素有穷并且范围不大,可以用整型数组来进行统计。在对一个内容进行压缩或者其它转换时,利用 HashMap 可以把原始内容和转换后的内容联系起来。例如在一个简化 url 的系统中 [Leetcdoe : 535. Encode and Decode TinyURL (Medium)](https://leetcode.com/problems/encode-and-decode-tinyurl/description/),利用 HashMap 就可以存储精简后的 url 到原始 url 的映射,使得不仅可以显示简化的 url,也可以根据简化的 url 得到原始 url 从而定位到正确的资源。 -# 数组中两个数的和为给定值 +# 1. 数组中两个数的和为给定值 [1. Two Sum (Easy)](https://leetcode.com/problems/two-sum/description/) @@ -36,7 +35,7 @@ public int[] twoSum(int[] nums, int target) { } ``` -# 判断数组是否含有重复元素 +# 2. 判断数组是否含有重复元素 [217. Contains Duplicate (Easy)](https://leetcode.com/problems/contains-duplicate/description/) @@ -50,7 +49,7 @@ public boolean containsDuplicate(int[] nums) { } ``` -# 最长和谐序列 +# 3. 最长和谐序列 [594. Longest Harmonious Subsequence (Easy)](https://leetcode.com/problems/longest-harmonious-subsequence/description/) @@ -78,7 +77,7 @@ public int findLHS(int[] nums) { } ``` -# 最长连续序列 +# 4. 最长连续序列 [128. Longest Consecutive Sequence (Hard)](https://leetcode.com/problems/longest-consecutive-sequence/description/) diff --git a/docs/notes/Leetcode 题解 - 图.md b/docs/notes/Leetcode 题解 - 图.md index d275a757..5550ac85 100644 --- a/docs/notes/Leetcode 题解 - 图.md +++ b/docs/notes/Leetcode 题解 - 图.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [二分图](#二分图) * [判断是否为二分图](#判断是否为二分图) * [拓扑排序](#拓扑排序) diff --git a/docs/notes/Leetcode 题解 - 字符串.md b/docs/notes/Leetcode 题解 - 字符串.md index 9489116b..f9f28dfa 100644 --- a/docs/notes/Leetcode 题解 - 字符串.md +++ b/docs/notes/Leetcode 题解 - 字符串.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [字符串循环移位包含](#字符串循环移位包含) * [字符串循环移位](#字符串循环移位) * [字符串中单词的翻转](#字符串中单词的翻转) diff --git a/docs/notes/Leetcode 题解 - 排序.md b/docs/notes/Leetcode 题解 - 排序.md index b9ef2451..ece72b6d 100644 --- a/docs/notes/Leetcode 题解 - 排序.md +++ b/docs/notes/Leetcode 题解 - 排序.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [快速选择](#快速选择) * [堆排序](#堆排序) * [Kth Element](#kth-element) diff --git a/docs/notes/Leetcode 题解 - 搜索.md b/docs/notes/Leetcode 题解 - 搜索.md index b12e6e6a..d13a0277 100644 --- a/docs/notes/Leetcode 题解 - 搜索.md +++ b/docs/notes/Leetcode 题解 - 搜索.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [BFS](#bfs) * [计算在网格中从原点到特定点的最短路径长度](#计算在网格中从原点到特定点的最短路径长度) * [组成整数的最小平方数数量](#组成整数的最小平方数数量) diff --git a/docs/notes/Leetcode 题解 - 数学.md b/docs/notes/Leetcode 题解 - 数学.md index eadb76de..4806f11c 100644 --- a/docs/notes/Leetcode 题解 - 数学.md +++ b/docs/notes/Leetcode 题解 - 数学.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [素数分解](#素数分解) * [整除](#整除) * [最大公约数最小公倍数](#最大公约数最小公倍数) diff --git a/docs/notes/Leetcode 题解 - 数组与矩阵.md b/docs/notes/Leetcode 题解 - 数组与矩阵.md index cbaddae9..5bf46788 100644 --- a/docs/notes/Leetcode 题解 - 数组与矩阵.md +++ b/docs/notes/Leetcode 题解 - 数组与矩阵.md @@ -1,21 +1,20 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - -* [把数组中的 0 移到末尾](#把数组中的-0-移到末尾) -* [改变矩阵维度](#改变矩阵维度) -* [找出数组中最长的连续 1](#找出数组中最长的连续-1) -* [有序矩阵查找](#有序矩阵查找) -* [有序矩阵的 Kth Element](#有序矩阵的-kth-element) -* [一个数组元素在 [1, n] 之间,其中一个数被替换为另一个数,找出重复的数和丢失的数](#一个数组元素在-[1,-n]-之间,其中一个数被替换为另一个数,找出重复的数和丢失的数) -* [找出数组中重复的数,数组值在 [1, n] 之间](#找出数组中重复的数,数组值在-[1,-n]-之间) -* [数组相邻差值的个数](#数组相邻差值的个数) -* [数组的度](#数组的度) -* [对角元素相等的矩阵](#对角元素相等的矩阵) -* [嵌套数组](#嵌套数组) -* [分隔数组](#分隔数组) +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) +* [1. 把数组中的 0 移到末尾](#1-把数组中的-0-移到末尾) +* [2. 改变矩阵维度](#2-改变矩阵维度) +* [3. 找出数组中最长的连续 1](#3-找出数组中最长的连续-1) +* [4. 有序矩阵查找](#4-有序矩阵查找) +* [5. 有序矩阵的 Kth Element](#5-有序矩阵的-kth-element) +* [6. 一个数组元素在 [1, n] 之间,其中一个数被替换为另一个数,找出重复的数和丢失的数](#6-一个数组元素在-[1,-n]-之间,其中一个数被替换为另一个数,找出重复的数和丢失的数) +* [7. 找出数组中重复的数,数组值在 [1, n] 之间](#7-找出数组中重复的数,数组值在-[1,-n]-之间) +* [8. 数组相邻差值的个数](#8-数组相邻差值的个数) +* [9. 数组的度](#9-数组的度) +* [10. 对角元素相等的矩阵](#10-对角元素相等的矩阵) +* [11. 嵌套数组](#11-嵌套数组) +* [12. 分隔数组](#12-分隔数组) -# 把数组中的 0 移到末尾 +# 1. 把数组中的 0 移到末尾 [283. Move Zeroes (Easy)](https://leetcode.com/problems/move-zeroes/description/) @@ -37,7 +36,7 @@ public void moveZeroes(int[] nums) { } ``` -# 改变矩阵维度 +# 2. 改变矩阵维度 [566. Reshape the Matrix (Easy)](https://leetcode.com/problems/reshape-the-matrix/description/) @@ -73,7 +72,7 @@ public int[][] matrixReshape(int[][] nums, int r, int c) { } ``` -# 找出数组中最长的连续 1 +# 3. 找出数组中最长的连续 1 [485. Max Consecutive Ones (Easy)](https://leetcode.com/problems/max-consecutive-ones/description/) @@ -88,7 +87,7 @@ public int findMaxConsecutiveOnes(int[] nums) { } ``` -# 有序矩阵查找 +# 4. 有序矩阵查找 [240. Search a 2D Matrix II (Medium)](https://leetcode.com/problems/search-a-2d-matrix-ii/description/) @@ -114,7 +113,7 @@ public boolean searchMatrix(int[][] matrix, int target) { } ``` -# 有序矩阵的 Kth Element +# 5. 有序矩阵的 Kth Element [378. Kth Smallest Element in a Sorted Matrix ((Medium))](https://leetcode.com/problems/kth-smallest-element-in-a-sorted-matrix/description/) @@ -180,7 +179,7 @@ class Tuple implements Comparable { } ``` -# 一个数组元素在 [1, n] 之间,其中一个数被替换为另一个数,找出重复的数和丢失的数 +# 6. 一个数组元素在 [1, n] 之间,其中一个数被替换为另一个数,找出重复的数和丢失的数 [645. Set Mismatch (Easy)](https://leetcode.com/problems/set-mismatch/description/) @@ -225,7 +224,7 @@ private void swap(int[] nums, int i, int j) { - [448. Find All Numbers Disappeared in an Array (Easy)](https://leetcode.com/problems/find-all-numbers-disappeared-in-an-array/description/),寻找所有丢失的元素 - [442. Find All Duplicates in an Array (Medium)](https://leetcode.com/problems/find-all-duplicates-in-an-array/description/),寻找所有重复的元素。 -# 找出数组中重复的数,数组值在 [1, n] 之间 +# 7. 找出数组中重复的数,数组值在 [1, n] 之间 [287. Find the Duplicate Number (Medium)](https://leetcode.com/problems/find-the-duplicate-number/description/) @@ -267,7 +266,7 @@ public int findDuplicate(int[] nums) { } ``` -# 数组相邻差值的个数 +# 8. 数组相邻差值的个数 [667. Beautiful Arrangement II (Medium)](https://leetcode.com/problems/beautiful-arrangement-ii/description/) @@ -295,7 +294,7 @@ public int[] constructArray(int n, int k) { } ``` -# 数组的度 +# 9. 数组的度 [697. Degree of an Array (Easy)](https://leetcode.com/problems/degree-of-an-array/description/) @@ -334,7 +333,7 @@ public int findShortestSubArray(int[] nums) { } ``` -# 对角元素相等的矩阵 +# 10. 对角元素相等的矩阵 [766. Toeplitz Matrix (Easy)](https://leetcode.com/problems/toeplitz-matrix/description/) @@ -372,7 +371,7 @@ private boolean check(int[][] matrix, int expectValue, int row, int col) { } ``` -# 嵌套数组 +# 11. 嵌套数组 [565. Array Nesting (Medium)](https://leetcode.com/problems/array-nesting/description/) @@ -406,7 +405,7 @@ public int arrayNesting(int[] nums) { } ``` -# 分隔数组 +# 12. 分隔数组 [769. Max Chunks To Make Sorted (Medium)](https://leetcode.com/problems/max-chunks-to-make-sorted/description/) diff --git a/docs/notes/Leetcode 题解 - 栈和队列.md b/docs/notes/Leetcode 题解 - 栈和队列.md index c6bf5964..13fdffb7 100644 --- a/docs/notes/Leetcode 题解 - 栈和队列.md +++ b/docs/notes/Leetcode 题解 - 栈和队列.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [用栈实现队列](#用栈实现队列) * [用队列实现栈](#用队列实现栈) * [最小值栈](#最小值栈) diff --git a/docs/notes/Leetcode 题解 - 树.md b/docs/notes/Leetcode 题解 - 树.md index 2ca20ee6..195a43f9 100644 --- a/docs/notes/Leetcode 题解 - 树.md +++ b/docs/notes/Leetcode 题解 - 树.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [递归](#递归) * [树的高度](#树的高度) * [平衡树](#平衡树) diff --git a/docs/notes/Leetcode 题解 - 目录.md b/docs/notes/Leetcode 题解 - 目录.md index ee3e594b..d9333f81 100644 --- a/docs/notes/Leetcode 题解 - 目录.md +++ b/docs/notes/Leetcode 题解 - 目录.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [算法思想](#算法思想) * [数据结构相关](#数据结构相关) * [参考资料](#参考资料) diff --git a/docs/notes/Leetcode 题解 - 贪心思想.md b/docs/notes/Leetcode 题解 - 贪心思想.md index e022b1df..8df05990 100644 --- a/docs/notes/Leetcode 题解 - 贪心思想.md +++ b/docs/notes/Leetcode 题解 - 贪心思想.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [分配饼干](#分配饼干) * [不重叠的区间个数](#不重叠的区间个数) * [投飞镖刺破气球](#投飞镖刺破气球) diff --git a/docs/notes/Leetcode 题解 - 链表.md b/docs/notes/Leetcode 题解 - 链表.md index f8e17044..f5c0bb7b 100644 --- a/docs/notes/Leetcode 题解 - 链表.md +++ b/docs/notes/Leetcode 题解 - 链表.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [找出两个链表的交点](#找出两个链表的交点) * [链表反转](#链表反转) * [归并两个有序的链表](#归并两个有序的链表) diff --git a/docs/notes/Leetcode-Database 题解.md b/docs/notes/Leetcode-Database 题解.md index 629aba39..41c0b572 100644 --- a/docs/notes/Leetcode-Database 题解.md +++ b/docs/notes/Leetcode-Database 题解.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [595. Big Countries](#595-big-countries) * [627. Swap Salary](#627-swap-salary) * [620. Not Boring Movies](#620-not-boring-movies) diff --git a/docs/notes/Linux.md b/docs/notes/Linux.md index 061bedbb..7340847b 100644 --- a/docs/notes/Linux.md +++ b/docs/notes/Linux.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [一、常用操作以及概念](#一常用操作以及概念) * [快捷键](#快捷键) * [求助](#求助) diff --git a/docs/notes/MySQL.md b/docs/notes/MySQL.md index 329e4ecb..6fb44a68 100644 --- a/docs/notes/MySQL.md +++ b/docs/notes/MySQL.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [一、索引](#一索引) * [B+ Tree 原理](#b-tree-原理) * [MySQL 索引](#mysql-索引) diff --git a/docs/notes/Redis.md b/docs/notes/Redis.md index 4291f6a8..13a03b05 100644 --- a/docs/notes/Redis.md +++ b/docs/notes/Redis.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [一、概述](#一概述) * [二、数据类型](#二数据类型) * [STRING](#string) diff --git a/docs/notes/SQL.md b/docs/notes/SQL.md index 2ac1b071..ddbdba3d 100644 --- a/docs/notes/SQL.md +++ b/docs/notes/SQL.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [一、基础](#一基础) * [二、创建表](#二创建表) * [三、修改表](#三修改表) diff --git a/docs/notes/Socket.md b/docs/notes/Socket.md index f30b5b1f..f148f81e 100644 --- a/docs/notes/Socket.md +++ b/docs/notes/Socket.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [一、I/O 模型](#一io-模型) * [阻塞式 I/O](#阻塞式-io) * [非阻塞式 I/O](#非阻塞式-io) diff --git a/docs/notes/代码可读性.md b/docs/notes/代码可读性.md index cae693f7..1a2e1f90 100644 --- a/docs/notes/代码可读性.md +++ b/docs/notes/代码可读性.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [一、可读性的重要性](#一可读性的重要性) * [二、用名字表达代码含义](#二用名字表达代码含义) * [三、名字不能带来歧义](#三名字不能带来歧义) diff --git a/docs/notes/代码风格规范.md b/docs/notes/代码风格规范.md index c94a413b..35db1821 100644 --- a/docs/notes/代码风格规范.md +++ b/docs/notes/代码风格规范.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) diff --git a/docs/notes/分布式.md b/docs/notes/分布式.md index c9673335..a1358401 100644 --- a/docs/notes/分布式.md +++ b/docs/notes/分布式.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [一、分布式锁](#一分布式锁) * [数据库的唯一索引](#数据库的唯一索引) * [Redis 的 SETNX 指令](#redis-的-setnx-指令) diff --git a/docs/notes/剑指 offer 题解.md b/docs/notes/剑指 offer 题解.md index 6e6f70cb..bc433f7e 100644 --- a/docs/notes/剑指 offer 题解.md +++ b/docs/notes/剑指 offer 题解.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [3. 数组中重复的数字](#3-数组中重复的数字) * [4. 二维数组中的查找](#4-二维数组中的查找) * [5. 替换空格](#5-替换空格) diff --git a/docs/notes/攻击技术.md b/docs/notes/攻击技术.md index b698e496..bef3916a 100644 --- a/docs/notes/攻击技术.md +++ b/docs/notes/攻击技术.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [一、跨站脚本攻击](#一跨站脚本攻击) * [二、跨站请求伪造](#二跨站请求伪造) * [三、SQL 注入攻击](#三sql-注入攻击) diff --git a/docs/notes/数据库系统原理.md b/docs/notes/数据库系统原理.md index 34a2a3e3..7fe58e24 100644 --- a/docs/notes/数据库系统原理.md +++ b/docs/notes/数据库系统原理.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [一、事务](#一事务) * [概念](#概念) * [ACID](#acid) diff --git a/docs/notes/构建工具.md b/docs/notes/构建工具.md index fcdd6b44..dfb63cbf 100644 --- a/docs/notes/构建工具.md +++ b/docs/notes/构建工具.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [一、构建工具的作用](#一构建工具的作用) * [二、Java 主流构建工具](#二java-主流构建工具) * [三、Maven](#三maven) diff --git a/docs/notes/正则表达式.md b/docs/notes/正则表达式.md index 2b6505a4..22bdec70 100644 --- a/docs/notes/正则表达式.md +++ b/docs/notes/正则表达式.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [一、概述](#一概述) * [二、匹配单个字符](#二匹配单个字符) * [三、匹配一组字符](#三匹配一组字符) diff --git a/docs/notes/消息队列.md b/docs/notes/消息队列.md index 16ac80df..20e27f4c 100644 --- a/docs/notes/消息队列.md +++ b/docs/notes/消息队列.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [一、消息模型](#一消息模型) * [点对点](#点对点) * [发布/订阅](#发布订阅) diff --git a/docs/notes/算法.md b/docs/notes/算法.md index 3492026f..3c85688f 100644 --- a/docs/notes/算法.md +++ b/docs/notes/算法.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [一、前言](#一前言) * [二、算法分析](#二算法分析) * [数学模型](#数学模型) diff --git a/docs/notes/系统设计基础.md b/docs/notes/系统设计基础.md index 2b095426..43cc166c 100644 --- a/docs/notes/系统设计基础.md +++ b/docs/notes/系统设计基础.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [一、性能](#一性能) * [二、伸缩性](#二伸缩性) * [三、扩展性](#三扩展性) diff --git a/docs/notes/缓存.md b/docs/notes/缓存.md index 3e43a32b..428b2080 100644 --- a/docs/notes/缓存.md +++ b/docs/notes/缓存.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [一、缓存特征](#一缓存特征) * [二、LRU](#二lru) * [三、缓存位置](#三缓存位置) diff --git a/docs/notes/计算机操作系统.md b/docs/notes/计算机操作系统.md index 9520d1be..a0768936 100644 --- a/docs/notes/计算机操作系统.md +++ b/docs/notes/计算机操作系统.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [一、概述](#一概述) * [基本特征](#基本特征) * [基本功能](#基本功能) diff --git a/docs/notes/计算机网络.md b/docs/notes/计算机网络.md index 47908e26..a5b964cb 100644 --- a/docs/notes/计算机网络.md +++ b/docs/notes/计算机网络.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [一、概述](#一概述) * [网络的网络](#网络的网络) * [ISP](#isp) diff --git a/docs/notes/设计模式.md b/docs/notes/设计模式.md index 4a35404f..270e0331 100644 --- a/docs/notes/设计模式.md +++ b/docs/notes/设计模式.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [一、概述](#一概述) * [二、创建型](#二创建型) * [1. 单例(Singleton)](#1-单例singleton) diff --git a/docs/notes/集群.md b/docs/notes/集群.md index 1ab268db..8030c238 100644 --- a/docs/notes/集群.md +++ b/docs/notes/集群.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [一、负载均衡](#一负载均衡) * [负载均衡算法](#负载均衡算法) * [转发实现](#转发实现) diff --git a/docs/notes/面向对象思想.md b/docs/notes/面向对象思想.md index 75f7ca8f..7a2f769c 100644 --- a/docs/notes/面向对象思想.md +++ b/docs/notes/面向对象思想.md @@ -1,5 +1,4 @@ -* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) - +* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [一、三大特性](#一三大特性) * [封装](#封装) * [继承](#继承)