auto commit
This commit is contained in:
parent
61de2ea520
commit
100bf5c905
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [一、解决的问题](#一解决的问题)
|
||||
* [二、与虚拟机的比较](#二与虚拟机的比较)
|
||||
* [三、优势](#三优势)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [集中式与分布式](#集中式与分布式)
|
||||
* [中心服务器](#中心服务器)
|
||||
* [工作流](#工作流)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [一 、基础概念](#一-基础概念)
|
||||
* [URI](#uri)
|
||||
* [请求和响应报文](#请求和响应报文)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [一、概览](#一概览)
|
||||
* [二、磁盘操作](#二磁盘操作)
|
||||
* [三、字节操作](#三字节操作)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [一、数据类型](#一数据类型)
|
||||
* [基本类型](#基本类型)
|
||||
* [包装类型](#包装类型)
|
||||
|
@ -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)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [一、概览](#一概览)
|
||||
* [Collection](#collection)
|
||||
* [Map](#map)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [一、线程状态转换](#一线程状态转换)
|
||||
* [新建(New)](#新建new)
|
||||
* [可运行(Runnable)](#可运行runnable)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [一、运行时数据区域](#一运行时数据区域)
|
||||
* [程序计数器](#程序计数器)
|
||||
* [Java 虚拟机栈](#java-虚拟机栈)
|
||||
|
|
|
@ -1,17 +1,17 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [原理](#原理)
|
||||
* [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-查找区间)
|
||||
<!-- GFM-TOC -->
|
||||
|
||||
|
||||
|
@ -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/)
|
||||
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [原理](#原理)
|
||||
* [1. 基本原理](#1-基本原理)
|
||||
* [2. mask 计算](#2-mask-计算)
|
||||
|
|
|
@ -1,10 +1,9 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [给表达式加括号](#给表达式加括号)
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [1. 给表达式加括号](#1-给表达式加括号)
|
||||
<!-- GFM-TOC -->
|
||||
|
||||
|
||||
# 给表达式加括号
|
||||
# 1. 给表达式加括号
|
||||
|
||||
[241. Different Ways to Add Parentheses (Medium)](https://leetcode.com/problems/different-ways-to-add-parentheses/description/)
|
||||
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [斐波那契数列](#斐波那契数列)
|
||||
* [爬楼梯](#爬楼梯)
|
||||
* [强盗抢劫](#强盗抢劫)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [有序数组的 Two Sum](#有序数组的-two-sum)
|
||||
* [两数平方和](#两数平方和)
|
||||
* [反转字符串中的元音字符](#反转字符串中的元音字符)
|
||||
|
|
|
@ -1,9 +1,8 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [数组中两个数的和为给定值](#数组中两个数的和为给定值)
|
||||
* [判断数组是否含有重复元素](#判断数组是否含有重复元素)
|
||||
* [最长和谐序列](#最长和谐序列)
|
||||
* [最长连续序列](#最长连续序列)
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [1. 数组中两个数的和为给定值](#1-数组中两个数的和为给定值)
|
||||
* [2. 判断数组是否含有重复元素](#2-判断数组是否含有重复元素)
|
||||
* [3. 最长和谐序列](#3-最长和谐序列)
|
||||
* [4. 最长连续序列](#4-最长连续序列)
|
||||
<!-- GFM-TOC -->
|
||||
|
||||
|
||||
|
@ -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/)
|
||||
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [二分图](#二分图)
|
||||
* [判断是否为二分图](#判断是否为二分图)
|
||||
* [拓扑排序](#拓扑排序)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [字符串循环移位包含](#字符串循环移位包含)
|
||||
* [字符串循环移位](#字符串循环移位)
|
||||
* [字符串中单词的翻转](#字符串中单词的翻转)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [快速选择](#快速选择)
|
||||
* [堆排序](#堆排序)
|
||||
* [Kth Element](#kth-element)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [BFS](#bfs)
|
||||
* [计算在网格中从原点到特定点的最短路径长度](#计算在网格中从原点到特定点的最短路径长度)
|
||||
* [组成整数的最小平方数数量](#组成整数的最小平方数数量)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [素数分解](#素数分解)
|
||||
* [整除](#整除)
|
||||
* [最大公约数最小公倍数](#最大公约数最小公倍数)
|
||||
|
|
|
@ -1,21 +1,20 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [把数组中的 0 移到末尾](#把数组中的-0-移到末尾)
|
||||
* [改变矩阵维度](#改变矩阵维度)
|
||||
* [找出数组中最长的连续 1](#找出数组中最长的连续-1)
|
||||
* [有序矩阵查找](#有序矩阵查找)
|
||||
* [有序矩阵的 Kth Element](#有序矩阵的-kth-element)
|
||||
* [一个数组元素在 [1, n] 之间,其中一个数被替换为另一个数,找出重复的数和丢失的数](#一个数组元素在-[1,-n]-之间,其中一个数被替换为另一个数,找出重复的数和丢失的数)
|
||||
* [找出数组中重复的数,数组值在 [1, n] 之间](#找出数组中重复的数,数组值在-[1,-n]-之间)
|
||||
* [数组相邻差值的个数](#数组相邻差值的个数)
|
||||
* [数组的度](#数组的度)
|
||||
* [对角元素相等的矩阵](#对角元素相等的矩阵)
|
||||
* [嵌套数组](#嵌套数组)
|
||||
* [分隔数组](#分隔数组)
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [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-分隔数组)
|
||||
<!-- GFM-TOC -->
|
||||
|
||||
|
||||
# 把数组中的 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<Tuple> {
|
|||
}
|
||||
```
|
||||
|
||||
# 一个数组元素在 [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/)
|
||||
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [用栈实现队列](#用栈实现队列)
|
||||
* [用队列实现栈](#用队列实现栈)
|
||||
* [最小值栈](#最小值栈)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [递归](#递归)
|
||||
* [树的高度](#树的高度)
|
||||
* [平衡树](#平衡树)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [算法思想](#算法思想)
|
||||
* [数据结构相关](#数据结构相关)
|
||||
* [参考资料](#参考资料)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [分配饼干](#分配饼干)
|
||||
* [不重叠的区间个数](#不重叠的区间个数)
|
||||
* [投飞镖刺破气球](#投飞镖刺破气球)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [找出两个链表的交点](#找出两个链表的交点)
|
||||
* [链表反转](#链表反转)
|
||||
* [归并两个有序的链表](#归并两个有序的链表)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [595. Big Countries](#595-big-countries)
|
||||
* [627. Swap Salary](#627-swap-salary)
|
||||
* [620. Not Boring Movies](#620-not-boring-movies)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [一、常用操作以及概念](#一常用操作以及概念)
|
||||
* [快捷键](#快捷键)
|
||||
* [求助](#求助)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [一、索引](#一索引)
|
||||
* [B+ Tree 原理](#b-tree-原理)
|
||||
* [MySQL 索引](#mysql-索引)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [一、概述](#一概述)
|
||||
* [二、数据类型](#二数据类型)
|
||||
* [STRING](#string)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [一、基础](#一基础)
|
||||
* [二、创建表](#二创建表)
|
||||
* [三、修改表](#三修改表)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [一、I/O 模型](#一io-模型)
|
||||
* [阻塞式 I/O](#阻塞式-io)
|
||||
* [非阻塞式 I/O](#非阻塞式-io)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [一、可读性的重要性](#一可读性的重要性)
|
||||
* [二、用名字表达代码含义](#二用名字表达代码含义)
|
||||
* [三、名字不能带来歧义](#三名字不能带来歧义)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
<!-- GFM-TOC -->
|
||||
|
||||
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [一、分布式锁](#一分布式锁)
|
||||
* [数据库的唯一索引](#数据库的唯一索引)
|
||||
* [Redis 的 SETNX 指令](#redis-的-setnx-指令)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [3. 数组中重复的数字](#3-数组中重复的数字)
|
||||
* [4. 二维数组中的查找](#4-二维数组中的查找)
|
||||
* [5. 替换空格](#5-替换空格)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [一、跨站脚本攻击](#一跨站脚本攻击)
|
||||
* [二、跨站请求伪造](#二跨站请求伪造)
|
||||
* [三、SQL 注入攻击](#三sql-注入攻击)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [一、事务](#一事务)
|
||||
* [概念](#概念)
|
||||
* [ACID](#acid)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [一、构建工具的作用](#一构建工具的作用)
|
||||
* [二、Java 主流构建工具](#二java-主流构建工具)
|
||||
* [三、Maven](#三maven)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [一、概述](#一概述)
|
||||
* [二、匹配单个字符](#二匹配单个字符)
|
||||
* [三、匹配一组字符](#三匹配一组字符)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [一、消息模型](#一消息模型)
|
||||
* [点对点](#点对点)
|
||||
* [发布/订阅](#发布订阅)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [一、前言](#一前言)
|
||||
* [二、算法分析](#二算法分析)
|
||||
* [数学模型](#数学模型)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [一、性能](#一性能)
|
||||
* [二、伸缩性](#二伸缩性)
|
||||
* [三、扩展性](#三扩展性)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [一、缓存特征](#一缓存特征)
|
||||
* [二、LRU](#二lru)
|
||||
* [三、缓存位置](#三缓存位置)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [一、概述](#一概述)
|
||||
* [基本特征](#基本特征)
|
||||
* [基本功能](#基本功能)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [一、概述](#一概述)
|
||||
* [网络的网络](#网络的网络)
|
||||
* [ISP](#isp)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [一、概述](#一概述)
|
||||
* [二、创建型](#二创建型)
|
||||
* [1. 单例(Singleton)](#1-单例singleton)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [一、负载均衡](#一负载均衡)
|
||||
* [负载均衡算法](#负载均衡算法)
|
||||
* [转发实现](#转发实现)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)
|
||||
<!-- GFM-TOC -->
|
||||
* [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide)<!-- GFM-TOC -->
|
||||
* [一、三大特性](#一三大特性)
|
||||
* [封装](#封装)
|
||||
* [继承](#继承)
|
||||
|
|
Loading…
Reference in New Issue
Block a user