Commit Graph

212 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
ZongYangL 03cbf5b972
Anonymous inner classes create generic instances that display the dec… (#627)
* Anonymous inner classes create generic instances that display the declared type

* Update TreeNode.java

* Update binary_tree_bfs.java

* Update graph_bfs.java

---------

Co-authored-by: zongjianwei <zongjianwei@meituan.com>
Co-authored-by: Yudong Jin <krahets@163.com>
2023-07-19 01:37:55 +08:00
krahets 1f784dadb0 Add Java and C++ code for the chapter of
divide and conquer.
2023-07-17 04:20:12 +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 cddddb8b8b Update knapsack_problem and intro_to_dp
Fix avl_tree
2023-07-09 02:39:58 +08:00
krahets 920512d872 Update the section of intro to DP. 2023-07-01 03:02:50 +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
liuyuxin 62e8f0df50
feat: complete Dart codes for chapter_hashing (#566) 2023-06-25 20:57:37 +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 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 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 f6d290d903 Update the comments of bubble sort
and insertion sort
2023-05-22 23:05:37 +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 f35020b335 Fix bucket_sort. 2023-05-15 19:54:07 +08:00
krahets fe69f7240d Add figures to replace_linear_by_hashing.md 2023-05-09 00:36:18 +08:00
krahets db6caf0d43 Update n queens. 2023-05-05 03:42:01 +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
krahets 40e6d2b415 Rename the common modules. 2023-04-24 04:20:51 +08:00
krahets 145975b335 Rename the common modules in Java, C++ and C. 2023-04-24 04:11: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 f5b8978330 Add cpp code for the backtrack algorithm. 2023-04-16 16:34:52 +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 b3640c53d1 Remove unused functions. 2023-04-14 05:52:59 +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
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 34a1bca627
Add the section of radix sort. (#441) 2023-03-26 22:02:37 +08:00
krahets 4830dffd26 Update the test case in bucket_sort.java 2023-03-26 04:50:59 +08:00
krahets c338a6d8d8 Add the section of bucket sort 2023-03-26 04:47:05 +08:00
krahets 22898b6955 Simplify the contents of the sorting algorithms. 2023-03-25 18:41:22 +08:00
Yudong Jin 65e47b0748
Add Python and C++ code for the counting sort. (#436) 2023-03-21 22:24:17 +08:00
Yudong Jin ceeb138487
Add the section of counting sort. (#427) 2023-03-19 23:42:12 +08:00
krahets 0840bc2043 Fix the deconstructor of linkedlist_queue.cpp 2023-03-16 18:43:13 +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
krahets 82bbdd444d Update the chapter of stack and queue. 2023-03-12 04:14:36 +08:00
Yudong Jin 33c797efeb
feat: Add C++ code for the graph bfs and dfs (#401)
* Add C++ code for the graph bfs and dfs

* Add C++ code for the graph bfs and dfs
2023-03-02 18:57:33 +08:00
Yudong Jin 4f941e3d99
Add C++ code for the linkedlist deque and array deque (#400) 2023-03-02 03:00:14 +08:00
krahets 9ea24e8b26 Change the operations sequence of the likedlist's insert() method. 2023-02-27 20:25:43 +08:00
krahets 18f2ec4fdc Fix array_deque.java
Unify the book name.
Update cover image.
2023-02-27 19:08:32 +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
Yudong Jin 1f4dba4845
Add the Python codes for the chapter of Graph and Heap (#382) 2023-02-23 20:00:40 +08:00
t8g f2d2cca5f1
refactor:Simplified lambda expressions for PriorityQueue in heap.md and heap.java (#379) 2023-02-22 19:35:49 +08:00
krahets 0b72fef381 Fix quick_sort.py 2023-02-21 21:51:56 +08:00
Leo.Cai d249c8802e
add chapter_sorting by dart (#366)
* add chapter_sorting by dart

* fixed style of dart and bug mentioned before

* alter min value of dart

* Update radix_sort.dart

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-02-19 01:03:42 +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 0fa78e4b3b Update graph_adjacency_list.java, .cs 2023-02-15 21:45:35 +08:00
krahets 1c05d109c7 Remove graph_traversal.java 2023-02-15 03:46:05 +08:00
krahets 113450dc93 Merge branch 'develop' 2023-02-15 03:36:58 +08:00
krahets 7238c560d1 Update binary_tree_bfs codes 2023-02-15 03:36:22 +08:00
krahets 8e0080f003 Update graph codes 2023-02-15 03:35:54 +08:00
Yudong Jin 925e05fd03
feat: add the section of Graph Traversal (#367)
* Graph dev

* Add the section of Graph Traversal.

* Add missing Vertex.java

* Add mkdocs.yml

* Update numbering

* Fix indentation and update array.md
2023-02-15 03:34:06 +08:00
krahets 9ad87617a0 Add missing Vertex.java 2023-02-15 03:24:26 +08:00
krahets dc441928d9 Add the section of Graph Traversal. 2023-02-15 03:22:57 +08:00
krahets c74f8293b9 Graph dev 2023-02-13 16:20:08 +08:00
krahets 300016393b Add code source blocks to the chapter Graph.
Fix "函数" and "方法"
2023-02-10 01:04:26 +08:00
Justin Tse d37c71b928
Add JavaScript and TypeScript code for section graph adjacency list (#358) 2023-02-10 00:42:45 +08:00
krahets b973c86ee4 Fix the initial edges in graph_adjacency_matrix 2023-02-09 23:12:28 +08:00
krahets 05f0054005 Add build script for JS and TS codes. 2023-02-08 19:45:06 +08:00
krahets 8f512c2840 Update code extractor of Java. 2023-02-07 19:05:19 +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
方圆 4ee3af176b
二叉搜索树: 排序小节 移动到 删除结点代码 的下面 (#340)
* 插入排序: 修改插入排序思想描述

* Update insertion_sort.md

* 二叉搜索树: 排序小节 移动到 删除结点代码 的下面

* fix: 双点 -> 双向

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-02-06 19:57:19 +08:00
Yudong Jin f14e3e4c57 Update linear_search and hashing_search. 2023-02-04 23:49:37 +08:00
Yudong Jin b39b84acba Update avl_tree 2023-02-03 18:58:01 +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
Yudong Jin e308657ae9 Update the test cases of deque. 2023-01-29 13:34:37 +08:00
Yudong Jin f58068c838
Add the chapter of Graph (#303)
* Update the chapter graph

* Update the chapter graph

* Update the chapter graph

* Update the chapter graph
2023-01-28 23:56:41 +08:00
Yudong Jin 31eefe028a Update linkedlist_deque.java 2023-01-20 02:56:50 +08:00