Skip to content

Commit 05c8aef

Browse files
committed
Update readme
1 parent 34b0012 commit 05c8aef

File tree

24 files changed

+167
-1139
lines changed

24 files changed

+167
-1139
lines changed

.gitbook.yaml

Lines changed: 0 additions & 8 deletions
This file was deleted.

README.md

Lines changed: 44 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,39 @@
11
# Coding Interview
22

3-
[![git](https://badgen.net/badge/Git/zdong1995/blue?icon=github)](https://github.com/zdong1995/) [![git](https://badgen.net/badge/Repo/star/yellow?icon=git)](https://github.com/zdong1995/coding-interview) ![build](https://github.com/zdong1995/coding-interview/workflows/Build/badge.svg) ![java](https://img.shields.io/badge/Language-java-orange.svg)
3+
[![](https://img.shields.io/badge/LeetCode-Solution-yellow?logo=leetcode)](https://github.com/zdong1995/LeetCode-Solution-Well-Explained) [![](https://img.shields.io/badge/Algo-Interview-blue?&logo=github)](https://github.com/zdong1995/Algorithm-Interview) ![java](https://img.shields.io/badge/Language-Java-orange?logo=java) ![Build](https://github.com/zdong1995/Algorithm-Interview/workflows/Build/badge.svg) [![](https://img.shields.io/badge/Github-zdong1995-blue?style=social&logo=github)](https://github.com/zdong1995/)
44

5-
Everything you need to know to prepare for a technical interview. Algorithm, Object Oriented Design, Data Structure, Design Patterns using Java.
5+
[简体中文](./REDME-CN.md)
6+
7+
Everything you need to know to prepare for a technical interview. Beginner-friendly tutorial of Data Structure and Algorithm, summary of categorized algorithm questions, and notes for Java and Object Oriented Design. English version tutorial will be updating regularly, please check my website: [Algorithm Interview Preparation](https://dongxiaoran.com/en/algo/) by dongxiaoran.
8+
9+
Welcome to check my repository [LeetCode-Solution-Well-Explained](https://github.com/zdong1995/LeetCode-Solution-Well-Explained) with detailed explanations and comments for LeetCode questions in different categories. If this is helpful for you, please feel free to add a star to the repo. Thank you! ❤️
10+
11+
This repo will be updated as following parts:
12+
- Part 1: Start from basic Data Structure and Algorithm to get good understanding of Recursion, use Two Pointers technique in large mounts of questions and practice sorting algorithms.
13+
14+
- Part 2: Search algorithm, especially graph search. BFS, DFS, pruning, memoization, greedy and dynamic programming.
15+
16+
- Part 3: Popular problems and advanced data structure like Trie, Union Find, TreeSet, TreeMap.
17+
18+
- Part 4: Java and Object-oriented Programming.
619

720
## Table of Contents
821

922
* Algorithm
10-
* [Fundamental](https://github.com/zdong1995/coding-interview##fundamental)
11-
* [Recursion](https://github.com/zdong1995/coding-interview##recursion)
12-
* [Two Pointers](https://github.com/zdong1995/coding-interview##two-pointers)
13-
* [Sorting](https://github.com/zdong1995/coding-interview##sorting)
14-
* [Breadth First Search \(BFS\)](https://github.com/zdong1995/coding-interview##bfs)
15-
* [Depth First Search \(DFS\)](https://github.com/zdong1995/coding-interview##dfs)
16-
* [Dynamic Programming \(DP\)](https://github.com/zdong1995/coding-interview##dp)
23+
* [Fundamental](https://github.com/zdong1995/Algorithm-Interview##fundamental)
24+
* [Recursion](https://github.com/zdong1995/Algorithm-Interview##recursion)
25+
* [Two Pointers](https://github.com/zdong1995/Algorithm-Interview##two-pointers)
26+
* [Sorting](https://github.com/zdong1995/Algorithm-Interview##sorting)
27+
* [Breadth First Search \(BFS\)](https://github.com/zdong1995/Algorithm-Interview##bfs)
28+
* [Depth First Search \(DFS\)](https://github.com/zdong1995/Algorithm-Interview##dfs)
29+
* [Dynamic Programming \(DP\)](https://github.com/zdong1995/Algorithm-Interview##dp)
30+
* [Popular Problems](https://github.com/zdong1995/Algorithm-Interview##popular)
31+
1732
* Implementation
18-
* [Data Structure](https://github.com/zdong1995/coding-interview##data-structure)
19-
* [Java](https://github.com/zdong1995/coding-interview##java)
33+
* [Java](https://github.com/zdong1995/Algorithm-Interview##java)
2034
* Object Oriented Programming
21-
* [Design Pattern](https://github.com/zdong1995/coding-interview##design-pattern)
22-
* [OOD Practice](https://github.com/zdong1995/coding-interview##ood-practice)
35+
* [Design Pattern](https://github.com/zdong1995/Algorithm-Interview##design-pattern)
36+
* [OOD Practice](https://github.com/zdong1995/Algorithm-Interview##ood-practice)
2337

2438
## Algorithm
2539

@@ -36,38 +50,32 @@ Popular interview algorithm problems summarized by different patterns.
3650

3751
* [ ] Introduction to Recursion
3852
* [ ] Recursion in LinkedList
39-
* [ ] Recursion in Tree - Basic
40-
* [ ] Recursion in Tree - Bottom Up
41-
* [ ] Recursion in Tree - LCA
42-
* [ ] Recursion in Tree - Path
43-
* [ ] Recursion in Tree - Serialization
53+
* [ ] Recursion in Tree
4454
* [ ] Recursion to Iterative
4555

4656
### Two Pointers
4757

48-
* [x] [Two Sum Pattern](docs/en/algorithm/3_TwoPointers/3_1_two_sum.md): [Code](src/main/java/algorithm/array/twosum)
58+
* [x] Two Sum Pattern: [Code](src/main/java/algorithm/array/twosum)
4959
* [ ] Slow-Fast Pointers
5060
* [ ] K-way Merge
5161
* [ ] Deduplication
5262
* [ ] Sliding Window
5363
* [ ] Partition
54-
* [ ] Backwards Pointers
5564

5665
### Sorting
5766

5867
* [ ] Merge Sort
5968
* [ ] Quick Sort
6069
* [ ] Quick Selection
6170
* [ ] Bucket Sort and Count Sort
62-
* [ ] Top-K Problem
6371

6472
### BFS
6573

6674
* [ ] Level Order Traversal
6775
* [ ] The Shortest Path
6876
* [ ] Connected Component
6977
* [ ] Topology Sorting
70-
* [ ] Best First Search and Dijkstra
78+
* [ ] Best-First Search and Dijkstra
7179

7280
### DFS
7381

@@ -83,17 +91,23 @@ Popular interview algorithm problems summarized by different patterns.
8391
* [ ] 2D DP
8492
* [ ] Greedy
8593

86-
## Implementation
94+
### Popular
8795

88-
Implementation of data structures and practice of Java programming language.
96+
- [ ] Merge Intervals
8997

90-
### Data Structure
98+
- [ ] Two Heap Pattern
9199

92-
* [ ] LinkedList
93-
* [ ] HashMap
94-
* [ ] Heap
95-
* [ ] Queue
96-
* [ ] Stack
100+
- [ ] Top-K Problem
101+
102+
- [ ] Union Find
103+
104+
- [ ] Data Structure Design
105+
106+
- [ ] Bit Operations
107+
108+
## Implementation
109+
110+
Implementation of data structures and practice of Java programming language.
97111

98112
### Java
99113

REDME-CN.md

Lines changed: 123 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,123 @@
1+
# 零基础算法面试指南
2+
[![](https://img.shields.io/badge/LeetCode-Solution-yellow?logo=leetcode)](https://github.com/zdong1995/LeetCode-Solution-Well-Explained) [![](https://img.shields.io/badge/Algo-Interview-blue?&logo=github)](https://github.com/zdong1995/Algorithm-Interview) ![java](https://img.shields.io/badge/Language-Java-orange?logo=java) ![Build](https://github.com/zdong1995/Algorithm-Interview/workflows/Build/badge.svg) [![](https://img.shields.io/badge/Github-zdong1995-blue?style=social&logo=github)](https://github.com/zdong1995/)
3+
4+
大家好,我是小染,这份算法与数据结构指南适用于转行和零基础同学,按类型题目整理更新,带你从零开始培养算法思维和准备算法面试。Repo 中包含有按类别总结的源码,便于 debug 练习,算法讲解文章链接:[小染的零基础算法面试指南](https://dongxiaoran.com/algo/)
5+
6+
欢迎点击上方 Badge 链接阅读我的 LeetCode Solutin 代码,如果对你有帮助欢迎在 Github 点个 Star 和关注微信公众号『[董小染](https://dongxiaoran.com/images/qrcode.png)』。
7+
8+
文章分为以下几部分进行安排,带你掌握面试高频算法与数据结构:
9+
- 第一部分:从基础数据结构入手,从递归思想的入门与深化,再到高频的双指针和排序算法。
10+
- 第二部分:掌握搜索算法,宽度优先,深度优先,到记忆存储,剪枝优化,入门动态规划。
11+
- 第三部分:高频面试题目分析,复杂题目讲解,高级数据结构等。
12+
- 第四部分:Java 与 OOD 面向对象程序设计。
13+
14+
### 1. 基础数据结构与算法
15+
16+
- [ ] 当我们在刷题时到底在刷什么
17+
18+
- [ ] 常用数据结构总结
19+
20+
- [ ] Iterative in LinkedList
21+
22+
- [ ] Binary Search
23+
24+
### 2. 优雅重要的递归思维
25+
26+
- [ ] Introduction to Recursion
27+
28+
- [ ] Recursion in LinkedList
29+
30+
- [ ] Recursion in Tree
31+
32+
- [ ] Recursion to Iterative
33+
34+
### 3. 巧妙高效的双指针
35+
36+
- [x] Two Sum Pattern: [Code](src/main/java/algorithm/array/twosum)
37+
- [ ] Slow-Fast Pointers
38+
39+
- [ ] K-way Merge
40+
41+
- [ ] Deduplication
42+
43+
- [ ] Sliding Window
44+
45+
- [ ] Partition
46+
47+
### 4. 轻松手写排序算法
48+
49+
- [ ] Merge Sort
50+
51+
- [ ] Quick Sort
52+
53+
- [ ] Quick Selection
54+
55+
- [ ] Comparasion-based Sort
56+
57+
### 5. 宽度优先搜索
58+
59+
- [ ] Level Order Traversal
60+
61+
- [ ] The Shortest Path
62+
63+
- [ ] Connected Component
64+
65+
- [ ] Topology Sorting
66+
67+
- [ ] Best First Search and Dijkstra
68+
69+
### 6. 深度优先搜索
70+
71+
- [ ] Subset
72+
73+
- [ ] Permutation
74+
75+
- [ ] Parentheses
76+
77+
- [ ] Memoization
78+
79+
- [ ] Graph Search
80+
81+
### 7. 数学归纳法与动态规划
82+
83+
- [ ] 1D DP
84+
85+
- [ ] 2D DP
86+
87+
- [ ] Greedy
88+
89+
### 8. 高频题目类型讲解
90+
91+
- [ ] Merge Intervals
92+
93+
- [ ] Two Heap Pattern
94+
95+
- [ ] Top-K Problem
96+
97+
- [ ] Union Find
98+
99+
- [ ] Data Structure Design
100+
101+
- [ ] Bit Operations
102+
103+
### 9. Java 学习笔记
104+
105+
- [ ] Java Basic Review
106+
107+
- [ ] Data Strucutre Implementation
108+
109+
- [ ] Multi-thread and Concurrency
110+
111+
### 10. 面向对象设计
112+
113+
- [ ] Encapsulation, Polymorphism and Inheritance
114+
115+
- [ ] Singleton Pattern
116+
117+
- [ ] Builder Pattern
118+
119+
- [ ] Factory Pattern
120+
121+
- [ ] Design Pattern
122+
123+
- [ ] OOD Practice

docs/.gitbook/assets/recursion.png

-226 KB
Binary file not shown.

docs/en/README.md

Lines changed: 0 additions & 120 deletions
This file was deleted.

0 commit comments

Comments
 (0)