Commit Graph

217 Commits

Author SHA1 Message Date
krahets 4e13755023 Add implementation of array binary tree.
Rewrite the tree serialization and deserialization methods.
Add applications of array and linked list.
2023-07-19 16:09:27 +08:00
krahets c68f18e480 Finetune 2023-07-19 01:45:14 +08:00
krahets 1f784dadb0 Add Java and C++ code for the chapter of
divide and conquer.
2023-07-17 04:20:12 +08:00
krahets fc7bcb615d Add the section of binary_search_recur. 2023-07-17 03:48:33 +08:00
Yudong Jin 909daea105
Add the section of hanota problem. (#614) 2023-07-17 02:20:49 +08:00
krahets f839dc1b0e Fix naming of the section
build_binary_tree_problem
2023-07-17 02:18:53 +08:00
Yudong Jin 51a4c5089e
feat: Add the chapter of divide and conquer (#609)
* Add the chapter of divide and conquer.
Add the section of divide and conquer algorithm.
Add the section of build tree problem.

* Update build_tree.py
2023-07-16 04:24:04 +08:00
Yudong Jin c3f80e52af
Add the section of edit distance problem (#599) 2023-07-13 05:27:47 +08:00
krahets 1c02859b13 Add the section of unbounded knapsack problem. 2023-07-11 19:22:41 +08:00
krahets ad0fd45cfb Add Java and C++ code for the chapter of DP. 2023-07-11 01:08:26 +08:00
krahets 465dafe9ec Update the text and code of DP. 2023-07-10 20:36:48 +08:00
Yudong Jin d6cc92614c
add the section of dp solution pipeline (#588) 2023-07-09 02:43:00 +08:00
krahets cddddb8b8b Update knapsack_problem and intro_to_dp
Fix avl_tree
2023-07-09 02:39:58 +08:00
Yudong Jin 55d8b710fa
Add the section of knapsack problem. (#580) 2023-07-06 00:06:14 +08:00
krahets 470bc10a74 Fix some contents. 2023-07-06 00:04:11 +08:00
krahets 69920a0599 Fix binary search.
Finetune a figure in intro_to_dp.
2023-07-01 20:07:21 +08:00
krahets 920512d872 Update the section of intro to DP. 2023-07-01 03:02:50 +08:00
krahets ba481cb8e6 Simplify the python code of bst and avl tree. 2023-06-30 05:17:30 +08:00
krahets 98e797f1fc Fix the bst python code.
Fitune the chapters name.
2023-06-30 05:09:17 +08:00
Yudong Jin 3f03663d2e
feat: add the section of the introduction to dynamic programming (#571)
* add the section of the introduction to
dynamic programming

* add a code comments.
2023-06-30 04:31:43 +08:00
krahets 54dc288e61 1. Remove Pair class from hash coliision code.
2. Fix the comment in my_list code.
3. Add a Q&A to the summary of sorting.
2023-06-26 23:06:15 +08:00
Yudong Jin 1b1af8d038
Add Java and C++ code for the section hash algorithm (#560) 2023-06-21 19:26:16 +08:00
Yudong Jin 0e2ddba30f
Add the section of subset sum problem. (#558) 2023-06-21 02:58:24 +08:00
krahets 9fc1a0b2b3 Update n_queens code. 2023-06-21 02:56:28 +08:00
Yudong Jin 29e6617ec1
Add the section of hash algorithm. Refactor the section of hash map. (#555) 2023-06-16 21:20:57 +08:00
Yudong Jin 9563965a20
Add the codes of hashmap (#553)
of chaining and open addressing
2023-06-14 02:01:06 +08:00
Yudong Jin a111b94f23
feat: Add the section of Top-K problem (#551)
* Add the section of Top-K problem

* Update my_heap.py

* Update build_heap.md

* Update my_heap.py
2023-06-12 23:04:01 +08:00
krahets 6377e3316a Fix a comment in my_list.xx 2023-06-03 22:18:28 +08:00
krahets e35e2e31eb Add the figure of assembling blocks.
Update some texts.
2023-05-31 01:04:40 +08:00
krahets b39e79be85 Fix remove() in binary search tree. 2023-05-26 20:34:22 +08:00
Yudong Jin ee716a2c23
feat: Add the section of heap sort. (#516)
* Add the section of heap sort.

* Update heap_sort.cpp
2023-05-26 04:46:56 +08:00
krahets 11c835d79c Update the section of heap. 2023-05-25 20:25:19 +08:00
krahets dc49fdf75e Polish some contents. 2023-05-24 11:45:52 +08:00
Yudong Jin 77b4f4c400
Add the section of selection sort. (#513) 2023-05-24 00:35:46 +08:00
krahets eb8df49993 Update bubble sort and insertion sort. 2023-05-23 21:20:14 +08:00
krahets 89a9741e9e Fix some comments. 2023-05-22 23:13:54 +08:00
krahets f6d290d903 Update the comments of bubble sort
and insertion sort
2023-05-22 23:05:37 +08:00
krahets 5b406666d8 Polish the content 2023-05-22 22:04:31 +08:00
krahets e196962d0a Simplify the declarations of the Python code. 2023-05-22 22:03:57 +08:00
krahets 24d90931e3 Update the callouts for the algorithm problems. 2023-05-21 19:58:21 +08:00
krahets d95c628eef Fix the test case of binary search. 2023-05-21 19:29:24 +08:00
krahets d3cc149c5a Merge the chapter of binary tree and searching. 2023-05-21 19:26:52 +08:00
Yudong Jin b5eb9ca271
feat: Add the section of binary search edge. (#508)
* Add the section of binary search edge.

* Delete binary_search_rotation.py
2023-05-21 19:04:21 +08:00
krahets c3e7455285 Refactor the section of bianry search. 2023-05-21 04:51:32 +08:00
krahets 399e5df39a Polish some cotents. 2023-05-18 20:27:58 +08:00
krahets 817b4598d5 Fix a comment in binary_search_tree code 2023-05-17 19:04:46 +08:00
krahets b093162208 Fix my_list.py 2023-05-17 04:46:55 +08:00
krahets fe69f7240d Add figures to replace_linear_by_hashing.md 2023-05-09 00:36:18 +08:00
Yudong Jin 67d647ab59
feat: Add the section of n queens problem (#483)
* Add the section of n queens problem

* Update n_queens.py

* Update n_queens.java

* Update n_queens.cpp

* Update n_queens.java
2023-05-04 05:27:17 +08:00
krahets bc77a81330 Update the codes of backtracking. 2023-04-27 02:17:04 +08:00
krahets 3f430fb85e Update the code of permutations i and ii 2023-04-27 01:18:18 +08:00
Yudong Jin c6eecfd0dc
feat: Add the section of permutations problem. (#476)
* Add the section of permutations problem.

* Update permutations_problem.md
2023-04-24 03:33:30 +08:00
krahets de579aa3f4 Fix the file headers. 2023-04-23 19:36:07 +08:00
krahets 3590262c7e Modify the exception handling in Java and Python. 2023-04-23 03:41:39 +08:00
krahets bad759b4f8 Rename the naming of the coding files
in backtracking algorithm.
Add the typedef to docs.
2023-04-22 01:38:53 +08:00
Yudong Jin 881d573790
Refactor the articles related to searching algorithm. Add the chapter of binary search. Add the section of searching algorithm revisited. (#464) 2023-04-17 18:22:18 +08:00
krahets 1600ed6dee Fix the codes of backtracking. 2023-04-16 05:14:15 +08:00
Yudong Jin 49606fd199
Add the chapter of backtracking. (#459) 2023-04-16 04:52:42 +08:00
krahets f7ae9c8a02 Fix the return type of binary search tree and avl tree 2023-04-14 05:47:20 +08:00
krahets f8513455b5 Format the Java codes with the Reat Hat extension. 2023-04-14 00:12:10 +08:00
krahets 0bec52d7cc Polish the chapter of heap, introduction, preface.
Replace "其它" with "其他"
2023-04-09 19:12:37 +08:00
krahets 10e2180013 Unify the comment style of python codes 2023-04-09 05:30:02 +08:00
Yudong Jin 5ddcb60825
Format python codes with black. (#453) 2023-04-09 05:05:35 +08:00
Yudong Jin 1c8b7ef559
refactor: Replace 结点 with 节点 (#452)
* Replace 结点 with 节点
Update the footnotes in the figures

* Update mindmap

* Reduce the size of the mindmap.png
2023-04-09 04:32:17 +08:00
Yudong Jin 830ec69d39
Add bucket_sort.cpp and bucket_sort.py (#446) 2023-03-30 03:44:26 +08:00
Yudong Jin 34a1bca627
Add the section of radix sort. (#441) 2023-03-26 22:02:37 +08:00
krahets 22898b6955 Simplify the contents of the sorting algorithms. 2023-03-25 18:41:22 +08:00
krahets 0a4a846e13 Fix python modules 2023-03-23 18:56:14 +08:00
Yudong Jin 8918ec9079
refactor: Follow the PEP 585 Typing standard (#439)
* Follow the PEP 585 Typing standard

* Update list.py
2023-03-23 18:51:56 +08:00
Yudong Jin 65e47b0748
Add Python and C++ code for the counting sort. (#436) 2023-03-21 22:24:17 +08:00
krahets 518b9efabc Update a comment in array_hash_map 2023-03-15 03:48:31 +08:00
krahets d5afd93571 Update array_hash_map 2023-03-15 03:11:43 +08:00
Yudong Jin 28aacccf44
refactor: Replace 'poll' with 'pop' in Heap (#416) 2023-03-13 22:31:05 +08:00
Yudong Jin 8aebbaad21
refactor: Replace poll with pop in Queue and Deque (#415) 2023-03-13 21:58:21 +08:00
Yudong Jin 9151eaf533
Add typing annotations to Python codes. (#411) 2023-03-12 18:49:52 +08:00
krahets bbef87ccfe Update the applications of deque. 2023-03-12 02:45:10 +08:00
krahets 7c501140f0 Update code style for Python 2023-03-03 03:07:22 +08:00
Yudong Jin 0ed596e251
Add array_deque.py and linkedlist_deque.py (#399) 2023-03-01 03:47:28 +08:00
krahets 9ea24e8b26 Change the operations sequence of the likedlist's insert() method. 2023-02-27 20:25:43 +08:00
zhuoqinyue 037aaeeaa2
fix: update the code comment (#386)
Co-authored-by: steak-zhuo <zhuoqinyue@gmail.com>
2023-02-26 01:16:41 +08:00
krahets adbb12c011 Fix a comment in graph_adjacency_list 2023-02-23 20:32:26 +08:00
krahets 73c8920c6b Add python code of Heap and Graph to docs. 2023-02-23 20:23:49 +08:00
Yudong Jin 1f4dba4845
Add the Python codes for the chapter of Graph and Heap (#382) 2023-02-23 20:00:40 +08:00
krahets 0b72fef381 Fix quick_sort.py 2023-02-21 21:51:56 +08:00
方圆 f0d8d8b1b0
feat: add ArrayDeque (#348)
* 双向队列: java 代码

* 双向队列: markdown 内容

* Rewrite array_deque.java
Update array_queue.java, linkedlist_deque.java

* Add ArrayDeque figures and rewrite the contents

---------

Co-authored-by: krahets <krahets@163.com>
2023-02-16 02:17:15 +08:00
krahets 7238c560d1 Update binary_tree_bfs codes 2023-02-15 03:36:22 +08:00
krahets 300016393b Add code source blocks to the chapter Graph.
Fix "函数" and "方法"
2023-02-10 01:04:26 +08:00
krahets 05f0054005 Add build script for JS and TS codes. 2023-02-08 19:45:06 +08:00
krahets ecbf2d1560 1. Add build script for Java.
2. Add height limitation for code blocks in extra.css.
3. Fix "节点" to "结点".
2023-02-07 04:43:52 +08:00
krahets ea901af217 1. Add the building util of Python
for the markdown docs.
2. Update the deploy.sh
2023-02-06 23:23:21 +08:00
krahets 94cba488ef Fix leetcode_two_sum.py 2023-02-06 04:34:01 +08:00
krahets 1b0a3a6e69 Update Python codes. 2023-02-06 04:11:22 +08:00
Yudong Jin f14e3e4c57 Update linear_search and hashing_search. 2023-02-04 23:49:37 +08:00
Yudong Jin a95fe26303 Fix Python code styles.
Update hash_map.
2023-02-03 20:03:30 +08:00
Yudong Jin 70dead5cd0 Update worst_best_time_complexity,
leetcode_two_sum
2023-02-03 18:53:15 +08:00
Yudong Jin 7d14c9440e Unify the function naming of
queue from `offer()` to `push()`
2023-02-02 01:43:01 +08:00
Yudong Jin 5eae708035 Fix array queue. 2023-02-01 03:23:29 +08:00
Yudong Jin ddd5562b60 Fix the index out of bound check in my_list. 2023-01-30 17:50:07 +08:00
beintentional 3858048d0f
更新队列的链表实现中 self.__front 判空的方式 (#297)
* 更新队列的链表实现中 self.__front 判空的方式

self.__front 初始化为 None, 元素入队判断队列是否为空,延用头节点的初始化值 None 而不是 0

* Update linkedlist_queue.py

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-01-28 00:30:37 +08:00
Yudong Jin fc221b19da fix: stack_operations.png, bubble_sort.py 2023-01-18 19:09:56 +08:00