Commit graph

1213 commits

Author SHA1 Message Date
krahets
51dab9dd25 Update overrides directory structure. 2023-10-08 04:42:57 +08:00
hpstory
f62256bee1
fix(csharp): Modify method name to PascalCase, simplify new expression (#840)
* Modify method name to PascalCase(array and linked list)

* Modify method name to PascalCase(backtracking)

* Modify method name to PascalCase(computational complexity)

* Modify method name to PascalCase(divide and conquer)

* Modify method name to PascalCase(dynamic programming)

* Modify method name to PascalCase(graph)

* Modify method name to PascalCase(greedy)

* Modify method name to PascalCase(hashing)

* Modify method name to PascalCase(heap)

* Modify method name to PascalCase(searching)

* Modify method name to PascalCase(sorting)

* Modify method name to PascalCase(stack and queue)

* Modify method name to PascalCase(tree)

* local check
2023-10-07 12:33:46 -05:00
47
70cff2d99f
fix: Fixed the state transition error in minCostClimbingStairsDP function (#839)
Signed-off-by: foursevenlove <foursevenlove@gmail.com>
2023-10-07 08:52:12 -05:00
Nepenthe
61e1d1faec
feat(go): add forLoopRecur func (#816) 2023-10-07 08:47:58 -05:00
王作勋
ef87bd494a
Add Binary search recur in C code (#820)
* Update vector.h

增加功能列表:
获取向量的第 i 个元素
设置向量的第 i 个元素
向量扩容
向量缩容
向量插入元素
向量删除元素
向量交换元素
向量是否为空
向量是否已满
向量是否相等
对向量内部进行排序(升序/降序)
对向量某段数据排序(升序/降序)

* Create hanota.c

* 新增binary_search_recur.c

* Update vector.h

* Delete codes/c/chapter_divide_and_conquer directory

* Update vector.h

* Create binary_search_recur.c

* Create CMakeLists.txt

* Update vector.h

* RollBack vector.h

* Update CMakeLists.txt

* Update binary_search_recur.c

* Update binary_search_recur.c

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-10-07 08:47:05 -05:00
王作勋
2b59c9ce88
Add Coin change ii in C code (#834)
* Update vector.h

增加功能列表:
获取向量的第 i 个元素
设置向量的第 i 个元素
向量扩容
向量缩容
向量插入元素
向量删除元素
向量交换元素
向量是否为空
向量是否已满
向量是否相等
对向量内部进行排序(升序/降序)
对向量某段数据排序(升序/降序)

* Create hanota.c

* 新增binary_search_recur.c

* Update vector.h

* Delete codes/c/chapter_divide_and_conquer directory

* Update vector.h

* Create binary_search_recur.c

* Delete codes/chapter_divide_and_conquer directory

* Update vector.h

* old vector.h

* Create coin_change_ii.c

* Update coin_change_ii.c

* Create CMakeLists.txt

* Update coin_change_ii.c

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-10-07 08:41:09 -05:00
王作勋
8b4d3300c3
Add Coin change in C code (#833)
* Update vector.h

增加功能列表:
获取向量的第 i 个元素
设置向量的第 i 个元素
向量扩容
向量缩容
向量插入元素
向量删除元素
向量交换元素
向量是否为空
向量是否已满
向量是否相等
对向量内部进行排序(升序/降序)
对向量某段数据排序(升序/降序)

* Create hanota.c

* 新增binary_search_recur.c

* Update vector.h

* Delete codes/c/chapter_divide_and_conquer directory

* Update vector.h

* Create binary_search_recur.c

* Delete codes/chapter_divide_and_conquer directory

* Update vector.h

* old vector.h

* Create coin_change.c

* Update coin_change.c

* Update coin_change.c

* Create CMakeLists.txt

* Update coin_change.c

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-10-07 08:40:17 -05:00
王作勋
d75a2eb691
Add Unbounded knapsack in C code (#832)
* Update vector.h

增加功能列表:
获取向量的第 i 个元素
设置向量的第 i 个元素
向量扩容
向量缩容
向量插入元素
向量删除元素
向量交换元素
向量是否为空
向量是否已满
向量是否相等
对向量内部进行排序(升序/降序)
对向量某段数据排序(升序/降序)

* Create hanota.c

* 新增binary_search_recur.c

* Update vector.h

* Delete codes/c/chapter_divide_and_conquer directory

* Update vector.h

* Create binary_search_recur.c

* Delete codes/chapter_divide_and_conquer directory

* Update vector.h

* old vector.h

* Create unbounded_knapsack.c

* Update unbounded_knapsack.c

* Update unbounded_knapsack.c

* Create CMakeLists.txt

* Update unbounded_knapsack.c

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-10-07 08:38:02 -05:00
王作勋
1364bc52e7
Add Min path sum in C code (#831)
* Update vector.h

增加功能列表:
获取向量的第 i 个元素
设置向量的第 i 个元素
向量扩容
向量缩容
向量插入元素
向量删除元素
向量交换元素
向量是否为空
向量是否已满
向量是否相等
对向量内部进行排序(升序/降序)
对向量某段数据排序(升序/降序)

* Create hanota.c

* 新增binary_search_recur.c

* Update vector.h

* Delete codes/c/chapter_divide_and_conquer directory

* Update vector.h

* Create binary_search_recur.c

* Delete codes/chapter_divide_and_conquer directory

* Update vector.h

* old vector.h

* Create min_path_sum.c

* Update min_path_sum.c

* Update min_path_sum.c

* Create CMakeLists.txt

* Update min_path_sum.c

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-10-07 08:36:52 -05:00
王作勋
946853431f
Add Knapsack in C code (#830)
* Update vector.h

增加功能列表:
获取向量的第 i 个元素
设置向量的第 i 个元素
向量扩容
向量缩容
向量插入元素
向量删除元素
向量交换元素
向量是否为空
向量是否已满
向量是否相等
对向量内部进行排序(升序/降序)
对向量某段数据排序(升序/降序)

* Create hanota.c

* 新增binary_search_recur.c

* Update vector.h

* Delete codes/c/chapter_divide_and_conquer directory

* Update vector.h

* Create binary_search_recur.c

* Delete codes/chapter_divide_and_conquer directory

* Update vector.h

* old vector.h

* Create knapsack.c

* Update knapsack.c

* Update knapsack.c

* Create CMakeLists.txt

* Update knapsack.c

* Update knapsack.c

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-10-07 08:33:41 -05:00
王作勋
c6bc10a101
Add Min cost climbing stairs dp in C code (#828)
* Update vector.h

增加功能列表:
获取向量的第 i 个元素
设置向量的第 i 个元素
向量扩容
向量缩容
向量插入元素
向量删除元素
向量交换元素
向量是否为空
向量是否已满
向量是否相等
对向量内部进行排序(升序/降序)
对向量某段数据排序(升序/降序)

* Create hanota.c

* 新增binary_search_recur.c

* Update vector.h

* Delete codes/c/chapter_divide_and_conquer directory

* Update vector.h

* Create binary_search_recur.c

* Delete codes/chapter_divide_and_conquer directory

* Update vector.h

* Create min_cost_climbing_stairs_dp.c

* Update min_cost_climbing_stairs_dp.c

* Update min_cost_climbing_stairs_dp.c

* RollBack vector.h

* Update min_cost_climbing_stairs_dp.c

* Update min_cost_climbing_stairs_dp.c

* Create CMakeLists.txt

* Update min_cost_climbing_stairs_dp.c
2023-10-07 08:32:35 -05:00
王作勋
21fa72ea9f
Add hanota in C code (#819)
* Update vector.h

增加功能列表:
获取向量的第 i 个元素
设置向量的第 i 个元素
向量扩容
向量缩容
向量插入元素
向量删除元素
向量交换元素
向量是否为空
向量是否已满
向量是否相等
对向量内部进行排序(升序/降序)
对向量某段数据排序(升序/降序)

* Create hanota.c

* 新增binary_search_recur.c

* Update vector.h

* Delete codes/c/chapter_divide_and_conquer directory

* Create hanota.c

* Update vector.h

* Update hanota.c

* Create CMakeLists.txt

* Update vector.h

* Update hanota.c

* RollBack vector.h

* Update CMakeLists.txt

* Update hanota.c

* Update hanota.c
2023-10-07 08:30:12 -05:00
王作勋
1f512b105f
refactor: Extend vector.h implementation (#818)
* Update vector.h

增加功能列表:
获取向量的第 i 个元素
设置向量的第 i 个元素
向量扩容
向量缩容
向量插入元素
向量删除元素
向量交换元素
向量是否为空
向量是否已满
向量是否相等
对向量内部进行排序(升序/降序)
对向量某段数据排序(升序/降序)

* Create hanota.c

* 新增binary_search_recur.c

* Update vector.h

* Delete codes/c/chapter_divide_and_conquer directory

* Update vector.h

* Create binary_search_recur.c

* Delete codes/chapter_divide_and_conquer directory

* Update vector.h

* Update vector.h
2023-10-07 00:43:30 -05:00
krahets
4355f8d49f Several bug fixes. 2023-10-04 02:30:31 +08:00
krahets
98538b924f Several bugs fixes and improvments; 2023-10-01 19:33:53 +08:00
易春风
e8bf5879b0
fix: the rust variable should have a snake case name (#811) 2023-09-29 08:37:02 -05:00
易春风
5b692968a9
feat: add for-loop-recur rust codes (#803) 2023-09-28 23:17:05 -05:00
花无缺
191330e73a
feat: Add C code for the section of intro to DP (#771)
* Add dynamic programming C language code

* Add dynamic programming chapter C language code

* Modifying errors in files
2023-09-25 22:11:08 -05:00
Flamingo
22be495412
fix(cpp). update hash_map (#800)
* fix(cpp). update hash_map

遍历 map 还是 k-v 键值对

* Update hash_map.md

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-09-25 22:07:14 -05:00
liuyuxin
e3366363b6
feat(dart): add forLoopRecur and update HashMapOpenAddressing (#802)
* feat(dart): add forLoopRecur

* feat(dart): update HashMapOpenAddressing
2023-09-25 22:04:13 -05:00
krahets
e567d08348 Bug fixes 2023-09-26 10:57:53 +08:00
nuomi1
72f243eec3
feat(Swift): update min_cost_climbing_stairs_dp and hash_map_open_addressing (#792) 2023-09-24 09:50:09 -05:00
krahets
ff8e7ceec5 Several bug fixes. 2023-09-24 20:38:21 +08:00
krahets
e3773b7f76 Several bug fixes and improments. 2023-09-24 19:35:32 +08:00
jmin
26bf0c5a78
feat: Add javascript and typescript code in chapter_computational_com… (#780)
* feat: Add javascript and typescript code in chapter_computational_complexity

* docs: Update code comment

* style: update code order th same with java
2023-09-24 03:17:19 -05:00
易春风
4b5e21d0d9
refactor: update the hash_map_open_addressing rust codes to synchronize with java (#787) 2023-09-24 03:16:06 -05:00
Reese Wellin
a6a1036dc9
fix(JS, TS): chapter_sorting QuickSortMedian and QuickSortTailCall example (#785) 2023-09-24 03:14:28 -05:00
hpstory
29c5ff4a8f
feat(csharp): add forLoopRecur and new HashMapOpenAddressing (#783) 2023-09-23 14:15:23 -05:00
Justin Tse
2f727d895d
Fix JS and TS sort bugs (#784) 2023-09-23 14:14:44 -05:00
krahets
1067f30fe7 Include glightbox plugin enabling zooming figures 2023-09-22 13:08:21 +08:00
xianii
d225b416cf
feat: add C code in chapter_greedy (#755)
* add fractional_knapsack.c

* update CMakeLists

* add c code in chapter_greedy

* fix header format

* format code by clang-format

* remove extra comments

* replace ternary operator to MACRO

* parameters form adjustment

* Update fractional_knapsack.c

* Update max_capacity.c

* Update max_product_cutting.c

* add comments for consistency with cpp ver

* move MIN&MAX macro to source file

* typo fix

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-09-21 07:52:11 -05:00
Yudong Jin
a46b482951
Refactor the hash_map_open_addressing implementation with lazy reallocation. (#776) 2023-09-21 04:43:15 -05:00
lyl625760
45e20e57a1
fix: Update hash_map_open_addressing.java (#727)
* FixBug:Update hash_map_open_addressing.java

1. put keyA, hashFunc 在位置 5
2 put key B, hashFunc 在位置  5. 和 A冲突,插入位置6
3. remove keyA,位置5removed
4. put keyB, hashFunc 在位置  5. 没有冲突,插入位置5
5. remove keyB, 位置5removed
6. get keyB, 此时会出bug,会访问到位置6. 实际上应为keyB 已经删除了

* Update hash_map_open_addressing.java

* Update hash_map_open_addressing.java

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-09-21 04:39:21 -05:00
krahets
8effa58a59 Several bug fixes. 2023-09-20 01:53:44 +08:00
gonglja
53d91db10d
Fix unreleased memory error (#769)
* fix(codes/cpp): Memory leak fix: the space was not freed when pop removed the element.

* fix(codes/cpp): Fix access error when printArray(arr, 0)

* Update PrintUtil.hpp

* fix(codes/c): Fix some errors of cmake build

* feat(codes/c): Add hashing_search.c

* styles(codes/c): Modify function description

* styles(codes/c): Modify binary_search.c code style

* fix(codes/c): Fix the problem in binary_tree_bfs.c and the problem that the memory is not released.

* feat: Add preorder_traversal_i_compact.c

* feat(codes/c): Add head_sort.c

* feat(codes/c): Add bucket_sort.c

* feat(codes/c): Add binary_search_edge.c

* fix(codes/c): Add programs that are not managed by cmake (c code)

* feat(codes/c): Add selection_sort.c

* style(codes/c): Change swap in selection_sort.c to `selectionSort`

* styles(codes/c): Change style.

* fix(codes/c): Fix some formatting errors and temporarily remove backtracking chapters

* fix(codes/c): Fix space_complexity.c build error.

* feat(codes/c): Add array_binary_tree.c

* feat(code/c): Update push_back and pop_back in vector.h

* styles(codes/c): Adjust  format.

* feat(codes/c): Add `interation.c ` `recursion.c` `simple_hash.c` `binary_search_edge.c` `binary_search_insertion.c` in C codes.

* fix(mylist.c): Fix `insert` function in `mylist.c`

https://github.com/krahets/hello-algo/discussions/32#discussioncomment-6974163

* fix(array.c): Fix unreleased memory error

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-09-19 23:53:45 +08:00
gonglja
bd740b0466
Fix linkedlist queue print error (#770)
* fix(codes/cpp): Memory leak fix: the space was not freed when pop removed the element.

* fix(codes/cpp): Fix access error when printArray(arr, 0)

* Update PrintUtil.hpp

* fix(codes/c): Fix some errors of cmake build

* feat(codes/c): Add hashing_search.c

* styles(codes/c): Modify function description

* styles(codes/c): Modify binary_search.c code style

* fix(codes/c): Fix the problem in binary_tree_bfs.c and the problem that the memory is not released.

* feat: Add preorder_traversal_i_compact.c

* feat(codes/c): Add head_sort.c

* feat(codes/c): Add bucket_sort.c

* feat(codes/c): Add binary_search_edge.c

* fix(codes/c): Add programs that are not managed by cmake (c code)

* feat(codes/c): Add selection_sort.c

* style(codes/c): Change swap in selection_sort.c to `selectionSort`

* styles(codes/c): Change style.

* fix(codes/c): Fix some formatting errors and temporarily remove backtracking chapters

* fix(codes/c): Fix space_complexity.c build error.

* feat(codes/c): Add array_binary_tree.c

* feat(code/c): Update push_back and pop_back in vector.h

* styles(codes/c): Adjust  format.

* feat(codes/c): Add `interation.c ` `recursion.c` `simple_hash.c` `binary_search_edge.c` `binary_search_insertion.c` in C codes.

* fix(mylist.c): Fix `insert` function in `mylist.c`

https://github.com/krahets/hello-algo/discussions/32#discussioncomment-6974163

* fix(linkedlist_queue.c): Fix linkedlist_queue.c print error

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-09-19 23:53:01 +08:00
krahets
9f59c572b5 fine tune 2023-09-17 01:13:15 +08:00
krahets
cb9c14f5ff fix build_tree, binary_search_tree.cs
fix two figures
2023-09-15 02:08:09 +08:00
xianii
af2aeb0897
Remove duplication in cmake (#756)
* remove duplication in cmakelists

* Update CMakeLists.txt

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-09-14 03:39:22 +08:00
krahets
d190dbf3c1 Several enhancements and fixes 2023-09-14 03:36:31 +08:00
malone6
a9d70e9e4b
fix: raise error in peek() function of linkedlist_stack.py, linkedlist_queue.py, linkedlist_deque.py (#754)
* fix: linkedlist_stack.py 中的peek方法需要判空raise Error

栈空的时候不能再 peek() 。另外由于 pop() 复用了 peek() ,栈空时返回的 None 会传递到 pop() 中的 num ,导致后续的继续执行 
 self.peek.next 报错等后续问题

* Update linkedlist_stack.py

* Update linkedlist_queue.py

* Update linkedlist_deque.py

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-09-14 01:22:53 +08:00
MwumLi
01732cc14f
feat: add c codes for iteration (#735)
Co-authored-by: Yudong Jin <krahets@163.com>
2023-09-13 03:13:55 +08:00
malone6
9b8625d741
Sync the while loop in iteration.cs with other languages (#746) 2023-09-13 03:06:40 +08:00
keshida
d5bac12f60
fix: modify a function name in array_stack.js(ts) and array_queue.js(ts) (#739)
* Update array_stack.js

判空函数名称有歧义

* Update array_stack.js

* Update array_queue.js

* Update array_stack.ts

* Update array_queue.ts

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-09-13 03:00:39 +08:00
gonglja
4a923f5a86
Fix insert function in mylist.c (#747)
* fix(codes/cpp): Memory leak fix: the space was not freed when pop removed the element.

* fix(codes/cpp): Fix access error when printArray(arr, 0)

* Update PrintUtil.hpp

* fix(codes/c): Fix some errors of cmake build

* feat(codes/c): Add hashing_search.c

* styles(codes/c): Modify function description

* styles(codes/c): Modify binary_search.c code style

* fix(codes/c): Fix the problem in binary_tree_bfs.c and the problem that the memory is not released.

* feat: Add preorder_traversal_i_compact.c

* feat(codes/c): Add head_sort.c

* feat(codes/c): Add bucket_sort.c

* feat(codes/c): Add binary_search_edge.c

* fix(codes/c): Add programs that are not managed by cmake (c code)

* feat(codes/c): Add selection_sort.c

* style(codes/c): Change swap in selection_sort.c to `selectionSort`

* styles(codes/c): Change style.

* fix(codes/c): Fix some formatting errors and temporarily remove backtracking chapters

* fix(codes/c): Fix space_complexity.c build error.

* feat(codes/c): Add array_binary_tree.c

* feat(code/c): Update push_back and pop_back in vector.h

* styles(codes/c): Adjust  format.

* feat(codes/c): Add `interation.c ` `recursion.c` `simple_hash.c` `binary_search_edge.c` `binary_search_insertion.c` in C codes.

* fix(mylist.c): Fix `insert` function in `mylist.c`

https://github.com/krahets/hello-algo/discussions/32#discussioncomment-6974163

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-09-13 02:50:43 +08:00
krahets
5f814d6538 Add comparison between iteration and recursion.
Fix the figure of tail recursion.
Fix two links.
2023-09-12 00:56:59 +08:00
krahets
2b54352bec prepare 1.0.0b5 release 2023-09-10 23:11:50 +08:00
gonglja
63efe61e56
Add interation.c recursion.c simple_hash.c binary_search_edge.c binary_search_insertion.c in C codes. (#731)
* fix(codes/cpp): Memory leak fix: the space was not freed when pop removed the element.

* fix(codes/cpp): Fix access error when printArray(arr, 0)

* Update PrintUtil.hpp

* fix(codes/c): Fix some errors of cmake build

* feat(codes/c): Add hashing_search.c

* styles(codes/c): Modify function description

* styles(codes/c): Modify binary_search.c code style

* fix(codes/c): Fix the problem in binary_tree_bfs.c and the problem that the memory is not released.

* feat: Add preorder_traversal_i_compact.c

* feat(codes/c): Add head_sort.c

* feat(codes/c): Add bucket_sort.c

* feat(codes/c): Add binary_search_edge.c

* fix(codes/c): Add programs that are not managed by cmake (c code)

* feat(codes/c): Add selection_sort.c

* style(codes/c): Change swap in selection_sort.c to `selectionSort`

* styles(codes/c): Change style.

* fix(codes/c): Fix some formatting errors and temporarily remove backtracking chapters

* fix(codes/c): Fix space_complexity.c build error.

* feat(codes/c): Add array_binary_tree.c

* feat(code/c): Update push_back and pop_back in vector.h

* styles(codes/c): Adjust  format.

* feat(codes/c): Add `interation.c ` `recursion.c` `simple_hash.c` `binary_search_edge.c` `binary_search_insertion.c` in C codes.

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-09-09 19:16:15 +08:00
gonglja
fb301b5767
Fix print error (#729)
* fix(codes/cpp): Memory leak fix: the space was not freed when pop removed the element.

* fix(codes/cpp): Fix access error when printArray(arr, 0)

* Update PrintUtil.hpp

* fix(codes/c): Fix some errors of cmake build

* feat(codes/c): Add hashing_search.c

* styles(codes/c): Modify function description

* styles(codes/c): Modify binary_search.c code style

* fix(codes/c): Fix the problem in binary_tree_bfs.c and the problem that the memory is not released.

* feat: Add preorder_traversal_i_compact.c

* feat(codes/c): Add head_sort.c

* feat(codes/c): Add bucket_sort.c

* feat(codes/c): Add binary_search_edge.c

* fix(codes/c): Add programs that are not managed by cmake (c code)

* feat(codes/c): Add selection_sort.c

* style(codes/c): Change swap in selection_sort.c to `selectionSort`

* styles(codes/c): Change style.

* fix(codes/c): Fix some formatting errors and temporarily remove backtracking chapters

* fix(codes/c): Fix space_complexity.c build error.

* feat(codes/c): Add array_binary_tree.c

* feat(code/c): Update push_back and pop_back in vector.h

* styles(codes/c): Adjust  format.

* fix(codes/cpp/chapter_greedy): Fix print error.

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-09-09 16:42:33 +08:00
gonglja
46d6463883
Remove unnecessary printing (#733)
* fix(codes/cpp): Memory leak fix: the space was not freed when pop removed the element.

* fix(codes/cpp): Fix access error when printArray(arr, 0)

* Update PrintUtil.hpp

* fix(codes/c): Fix some errors of cmake build

* feat(codes/c): Add hashing_search.c

* styles(codes/c): Modify function description

* styles(codes/c): Modify binary_search.c code style

* fix(codes/c): Fix the problem in binary_tree_bfs.c and the problem that the memory is not released.

* feat: Add preorder_traversal_i_compact.c

* feat(codes/c): Add head_sort.c

* feat(codes/c): Add bucket_sort.c

* feat(codes/c): Add binary_search_edge.c

* fix(codes/c): Add programs that are not managed by cmake (c code)

* feat(codes/c): Add selection_sort.c

* style(codes/c): Change swap in selection_sort.c to `selectionSort`

* styles(codes/c): Change style.

* fix(codes/c): Fix some formatting errors and temporarily remove backtracking chapters

* fix(codes/c): Fix space_complexity.c build error.

* feat(codes/c): Add array_binary_tree.c

* feat(code/c): Update push_back and pop_back in vector.h

* styles(codes/c): Adjust  format.

* style: Remove unnecessary print.

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-09-09 16:42:04 +08:00
gonglja
7483c6ce1e
Fix my_heap.c build error (#732)
* fix(codes/cpp): Memory leak fix: the space was not freed when pop removed the element.

* fix(codes/cpp): Fix access error when printArray(arr, 0)

* Update PrintUtil.hpp

* fix(codes/c): Fix some errors of cmake build

* feat(codes/c): Add hashing_search.c

* styles(codes/c): Modify function description

* styles(codes/c): Modify binary_search.c code style

* fix(codes/c): Fix the problem in binary_tree_bfs.c and the problem that the memory is not released.

* feat: Add preorder_traversal_i_compact.c

* feat(codes/c): Add head_sort.c

* feat(codes/c): Add bucket_sort.c

* feat(codes/c): Add binary_search_edge.c

* fix(codes/c): Add programs that are not managed by cmake (c code)

* feat(codes/c): Add selection_sort.c

* style(codes/c): Change swap in selection_sort.c to `selectionSort`

* styles(codes/c): Change style.

* fix(codes/c): Fix some formatting errors and temporarily remove backtracking chapters

* fix(codes/c): Fix space_complexity.c build error.

* feat(codes/c): Add array_binary_tree.c

* feat(code/c): Update push_back and pop_back in vector.h

* styles(codes/c): Adjust  format.

* fix(codes/c/chapter_heap): Fix my_head.c build error.

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-09-09 16:41:24 +08:00
linweibin
c8e0c476bd
增加C的贪心算法代码 (#726) 2023-09-09 16:28:44 +08:00
krahets
f71b2a40da fix preorder_traversal_iii_compact code 2023-09-09 00:51:00 +08:00
Night Cruising
2217ffc447
feat: add rust codes for simple_hash (#724) 2023-09-08 00:38:55 +08:00
XiaChuerwu
180d4982c9
feat: Add C codes for chapter_hashing (#706)
* feat: Add C codes for chapter_hashing

* fix:Make corrections to the formatting

* fix:Fixing Test Cases

* fix:Fixing Test Cases

* fix:revised format

* Update hash_map_chaining.c

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-09-08 00:36:49 +08:00
Yudong Jin
9c3b7b6422
Sort the coding languages by applications. (#721) 2023-09-04 03:19:08 +08:00
nuomi1
8d5e84f70a
Feature/chapter greedy swift (#720)
* feat: add Swift codes for greedy_algorithm article

* feat: add Swift codes for fractional_knapsack_problem article

* feat: add Swift codes for max_capacity_problem article

* feat: add Swift codes for max_product_cutting_problem article
2023-09-03 19:09:45 +08:00
krahets
dd72335235 Format C, C++, C#, Go, Java, Python, Rust code. 2023-09-02 23:54:38 +08:00
nuomi1
b6ac6aa7d7
Feature/chapter divide and conquer swift (#719)
* feat: add Swift codes for binary_search_recur article

* feat: add Swift codes for build_binary_tree_problem article

* feat: add Swift codes for hanota_problem article
2023-09-02 23:08:37 +08:00
krahets
978857570f Format JS and TS code. 2023-09-02 23:07:47 +08:00
Justin Tse
f96f583771
Add Chapter greedy for JS and TS code (#718)
* Fix binary_search_tree TS code

* Update binary_search_tree js code style

* Add the JavaScript code for Chapter of Greedy

* Add the TypeScript code for Chapter of Greedy

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-09-02 20:20:17 +08:00
Justin Tse
89a5f4d0d7
Fix binary_search_tree TS code and update JS code style (#715)
* Fix binary_search_tree TS code

* Update binary_search_tree js code style

* Update binary_search_tree.ts

* Update avl_tree.ts

* Update binary_search_tree.ts

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-09-02 19:56:23 +08:00
nuomi1
22d1135e04
refactor: remove buildTree (#716) 2023-09-02 19:47:54 +08:00
nuomi1
fd84d4443e
feat: add Swift codes for iteration_and_recursion article (#717) 2023-09-02 19:47:18 +08:00
gaofer
620bfb1f1d
Iteration and recursion code in js/ts (#703)
* feat(JS and TS):add the section of iteration and recursion

* feat(JS and TS):add the section of iteration and recursion

* feat(JS and TS):add the section of iteration and recursion
2023-09-02 16:09:13 +08:00
Night Cruising
3af00d00d7
feat: add rust codes for chapter computational complexity (#714) 2023-09-02 16:08:52 +08:00
hpstory
8a0a8b80cf
feat(csharp): fix binary_search_tree code (#712)
* feat(csharp): fix binary_search_tree code

* Update binary_search_tree.cs

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-08-31 16:59:43 +08:00
liuyuxin
233e842d63
fix dart code for binary_search_tree (#711) 2023-08-31 16:55:16 +08:00
Night Cruising
95bc0ffdb2
Feat: add rust codes for chapter searching (#710) 2023-08-31 02:36:06 +08:00
Night Cruising
d37b795ef2
Fix the bug of wrong function call (#709) 2023-08-31 02:33:13 +08:00
krahets
a47a974a6a fix climbing_stairs_constraint_dp code 2023-08-31 02:31:58 +08:00
krahets
628d8a516b fix binary_search_tree code 2023-08-31 02:31:31 +08:00
gaofer
f7ab4797bf
feat: add dynamic programming code for JS and TS (#692)
* fix: Correcting typos

* Add JavaScript and TypeScript code of dynamic programming.

* fix: Code Style

* Change ==/!= to ===/!==
* Create const by default, change to let if necessary.

* style fix: Delete unnecessary defined type
2023-08-30 15:27:01 +08:00
krahets
63aef4ed08 Fix a figure and latex symbols. 2023-08-30 15:25:03 +08:00
gaofer
1b94b77cbb
Add code in javascript and typescript. (#690)
* Add binary_search_insertion and binary_search_edge code in javascript and typescript.

* code style fix: in FOR loop, use CONST will be nicer.

* fix: Code Style

* Change ==/!= to ===/!==
* Create const by default, change to let if necessary.
* Update import files

* Update codes/javascript/chapter_searching/binary_search_edge.js

Co-authored-by: Justin Tse <xiefahit@gmail.com>

* style fix: Delete unnecessary defined type

---------

Co-authored-by: Justin Tse <xiefahit@gmail.com>
2023-08-30 05:21:47 +08:00
XiaChuerwu
cf0d4b32ec
Added destructor function (#702)
* Added destructor function

* Fixed hash function

* Added hash_map_chaining.c file

* Amendment submission

* Delete hash_map_chaining.c

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-08-29 20:24:42 +08:00
hpstory
8528ae224e
feat(csharp): add the section of iteration and recursion (#697) 2023-08-28 13:36:41 +08:00
Reanon
20f53e9fc4
feat(go): add iterration/recursion & fix bugs (#698) 2023-08-28 13:35:39 +08:00
liuyuxin
50e17905fd
feat: Add Dart Codes for section_iteration_and_recursion (#696) 2023-08-28 00:50:26 +08:00
krahets
9731a46d67 Fix a definition. 2023-08-27 00:50:18 +08:00
krahets
ae304bd605 Update iteration code. 2023-08-25 02:22:57 +08:00
Yudong Jin
3e64f68ae9
Add the section of iteration and recursion. (#693) 2023-08-24 17:51:41 +08:00
krahets
f524b957d4 Finetune and fix 2023-08-24 17:48:35 +08:00
Reanon
628a274b50
feat(go): support binary search & fix comments (#691) 2023-08-23 21:32:40 +08:00
krahets
f5dda8d99a Polish the content 2023-08-21 03:06:53 +08:00
krahets
2626de8d0b Polish the chapter
introduction, computational complexity.
2023-08-20 14:51:39 +08:00
krahets
c310edb672 Polish the chapter of array and linkedlist 2023-08-17 05:13:19 +08:00
liuyuxin
0858ab91c0
Add missing Dart codes and fix some errors (#689)
* Add missing Dart codes and fix some errors

* Update array_binary_tree.dart

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-08-17 05:04:38 +08:00
Justin Tse
5d7e0a59b1
Add JavaScript and TypeScript code of top_k and update some code style (#686)
* Update JS and TS code style

* Add JavaScript and TypeScript code of top_k

* Update top_k.ts

* Apply suggestions from code review

Co-authored-by: Justin Tse <xiefahit@gmail.com>

* Apply suggestions from code review

Co-authored-by: Justin Tse <xiefahit@gmail.com>

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-08-17 05:00:35 +08:00
liuyuxin
4c75c204f3
feat: Add Dart codes for binary search (#688) 2023-08-14 23:07:20 +08:00
Night Cruising
5a4182372c
Fix the bug of index in rust codes (#685) 2023-08-14 00:54:15 +08:00
krahets
0c18198c01 Fix the figures.
Polish the chapter of data structure.
2023-08-13 19:32:11 +08:00
William Yuan
ec82be7dc2
feat(tree): Add the array representation of the binary tree(js,ts) (#681)
* fix: fixed the bug of arrToTree function

* feat(tree): Add the array representation of the binary tree(js,ts)

* refactor: Make the arrToTree method match the method in java
2023-08-13 19:30:50 +08:00
liuyuxin
10c397b172
feat: Add Dart codes for chapter_dynamic_programming and chapter_greedy (#683)
* feat: Add Dart codes for chapter_dynamic_programming

* feat: Add Dart codes for chapter_greedy
2023-08-13 19:29:54 +08:00
liuyuxin
4325974af1
feat: Add Dart codes for chapter_backtracking and chapter_divide_and_conquer (#680)
* feat: Add Dart codes for chapter_backtracking

* feat: Add Dart codes for chapter_divide_and_conquer

* Format Dart Code
2023-08-10 23:48:56 +08:00
William Yuan
e97eee0e18
feat(chapter_hashing): Add js and ts codes for chapter hashing (#675)
* refactor(chapter_hashing): Remove unnecessary chaining operator

* feat(chapter_hashing): Add js and ts codes for chapter 6

* refactor(chapter_hashing): Optimize the remove function logic

* refactor(chapter_hashing): Remove unnecessary chaining operator

* refactor(chapter_hashing): use const instead of let
2023-08-10 23:04:41 +08:00
krahets
6ef4dc6444 Fix the content 2023-08-10 11:35:16 +08:00
krahets
932d14644d Polish the content
Polish the chapter preface, introduction and complexity anlysis
2023-08-08 23:16:33 +08:00
krahets
4bc6b8af7b finetune 2023-08-06 23:19:37 +08:00
hpstory
c14ca74b8b
feat(csharp): add binary search csharp codes (#676) 2023-08-06 23:16:02 +08:00
nuomi1
fceea4bbda
Feature/chapter searching swift (#673)
* fix: remove binary_search_edge

* feat: add Swift codes for binary_search_insertion article

* feat: add Swift codes for binary_search_edge article
2023-08-06 23:09:32 +08:00
krahets
08e4924054 Finetune 2023-08-04 05:25:22 +08:00
Yudong Jin
71074d88f6
Add the section of binary search insertion. (#671)
Refactor the section of binary search edge.
Finetune the figures of binary search.
2023-08-04 05:16:56 +08:00
gonglja
9900e0c668
Add array_binary_tree.c and update push_back and pop_back in vector.h (#664)
* fix(codes/cpp): Memory leak fix: the space was not freed when pop removed the element.

* fix(codes/cpp): Fix access error when printArray(arr, 0)

* Update PrintUtil.hpp

* fix(codes/c): Fix some errors of cmake build

* feat(codes/c): Add hashing_search.c

* styles(codes/c): Modify function description

* styles(codes/c): Modify binary_search.c code style

* fix(codes/c): Fix the problem in binary_tree_bfs.c and the problem that the memory is not released.

* feat: Add preorder_traversal_i_compact.c

* feat(codes/c): Add head_sort.c

* feat(codes/c): Add bucket_sort.c

* feat(codes/c): Add binary_search_edge.c

* fix(codes/c): Add programs that are not managed by cmake (c code)

* feat(codes/c): Add selection_sort.c

* style(codes/c): Change swap in selection_sort.c to `selectionSort`

* styles(codes/c): Change style.

* fix(codes/c): Fix some formatting errors and temporarily remove backtracking chapters

* fix(codes/c): Fix space_complexity.c build error.

* feat(codes/c): Add array_binary_tree.c

* feat(code/c): Update push_back and pop_back in vector.h

* styles(codes/c): Adjust  format.

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-08-03 14:48:10 +08:00
William Yuan
70784a1ec3
feat(chapter_backtracking): Add js and ts codes for chapter 13.3 (#667)
* feat(chapter_dynamic_programming): Add js and ts codes for chapter 14.1

* style(chapter_dynamic_programming): format code

* refactor(chapter_dynamic_programming): remove main definition and add type

* feat(chapter_backtracking): Add js and ts codes for chapter 13.3

* feat(chapter_divide_and_conquer): Add js and ts codes for chapter 12.2

* feat(chapter_divide_and_conquer): Add js and ts codes for chapter 12.3

* feat(chapter_divide_and_conquer): Add js and ts codes for chapter 12.4

* style(chapter_divide_and_conquer): fix typo

* refactor: Use === instead of == in js and ts
2023-08-03 14:44:49 +08:00
krahets
6da6d24193 Fix the code of hash map chaining. 2023-08-01 17:05:40 +08:00
nuomi1
a54ec55516
fix: break reference cycling (#666) 2023-07-31 03:32:19 +08:00
krahets
dbe3b4d6ba Fine tune. 2023-07-31 03:27:26 +08:00
gonglja
f7b827b303
Fix space_complexity.c build error. (#663)
* fix(codes/cpp): Memory leak fix: the space was not freed when pop removed the element.

* fix(codes/cpp): Fix access error when printArray(arr, 0)

* Update PrintUtil.hpp

* fix(codes/c): Fix some errors of cmake build

* feat(codes/c): Add hashing_search.c

* styles(codes/c): Modify function description

* styles(codes/c): Modify binary_search.c code style

* fix(codes/c): Fix the problem in binary_tree_bfs.c and the problem that the memory is not released.

* feat: Add preorder_traversal_i_compact.c

* feat(codes/c): Add head_sort.c

* feat(codes/c): Add bucket_sort.c

* feat(codes/c): Add binary_search_edge.c

* fix(codes/c): Add programs that are not managed by cmake (c code)

* feat(codes/c): Add selection_sort.c

* style(codes/c): Change swap in selection_sort.c to `selectionSort`

* styles(codes/c): Change style.

* fix(codes/c): Fix some formatting errors and temporarily remove backtracking chapters

* fix(codes/c): Fix space_complexity.c build error.

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-07-29 18:21:47 +08:00
gonglja
8f5ef68c65
feat: Add C codes for the chapter backtracking (#593)
* fix(codes/cpp): Memory leak fix: the space was not freed when pop removed the element.

* fix(codes/cpp): Fix access error when printArray(arr, 0)

* Update PrintUtil.hpp

* fix(codes/c): Fix some errors of cmake build

* feat(codes/c): Add hashing_search.c

* styles(codes/c): Modify function description

* styles(codes/c): Modify binary_search.c code style

* fix(codes/c): Fix the problem in binary_tree_bfs.c and the problem that the memory is not released.

* feat: Add preorder_traversal_i_compact.c

* feat(codes/c): Add head_sort.c

* feat(codes/c): Add bucket_sort.c

* feat(codes/c): Add binary_search_edge.c

* fix(codes/c): Add programs that are not managed by cmake (c code)

* feat(codes/c): Add selection_sort.c

* style(codes/c): Change swap in selection_sort.c to `selectionSort`

* styles(codes/c): Change style.

* fix(codes/c): Fix some formatting errors and temporarily remove backtracking chapters

* feat(codes/c): Add part of the c code in the backtracking chapter

* feat(codes/c): Add preorder_traversal_iii_compact.c

* feat(codes/c): Add preorder_traversal_iii_template.c

* feat(codes/c): Add permutations_i.c

* style(codes/c): Adjust the format

* feat(codes/c): Add memory release in chapter_backtracking

* fix(codes/c): Fix memory release issue.

* style(codes/c): Update format and Merge duplicate code

* style(code/c): Change print format in preorder_traversal_iii_template.c

* Update preorder_traversal_iii_template.c

* Update permutations_i.c

* feat(codes/c): Remove myArray, use public vector.

* feat(codes/c): Add subset_sum_i_naive.c in C codes.

* feat(codes/c): Add permutations_i in CMakeLists.txt

* feat(codes/c): Update printf function in vector.h.

* feat(codes/c): Add subset_sum_i.c and subset_sum_ii.c

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-07-29 15:14:01 +08:00
yishangzhang
fc63e990c8
fix: Object pointer not deleted (#662)
* fix: Object pointer not deleted

*  codes/cpp/chapter_hashing

Signed-off-by: yishangzhang <zhangyi2017@cug.edu.cn>

* Update hash_map_chaining.cpp

---------

Signed-off-by: yishangzhang <zhangyi2017@cug.edu.cn>
Co-authored-by: Yudong Jin <krahets@163.com>
2023-07-29 02:08:00 +08:00
William Yuan
35e9c8c209
feat(chapter_dynamic_programming): Add js and ts codes for chapter 14.1 (#658)
* feat(chapter_dynamic_programming): Add js and ts codes for chapter 14.1

* style(chapter_dynamic_programming): format code

* refactor(chapter_dynamic_programming): remove main definition and add type
2023-07-29 02:06:11 +08:00
WangSL
13bb76c283
feat: add rust code for build_in_hash and hash_collision (#629)
* Create hash_map_chaining.rs

* Create hash_map_open_addressing.rs

* Create build_in_hash.rs

* Update Cargo.toml
2023-07-26 15:42:47 +08:00
Reanon
575bcf58ef
feat(go/tree): support array binary tree (#655) 2023-07-26 11:04:09 +08:00
Yudong Jin
027bdd6510
Release Rust code to documents. (#656) 2023-07-26 11:00:53 +08:00
krahets
60162f6fa8 Finetune Rust code. 2023-07-26 10:01:49 +08:00
Night Cruising
06006c58a2
feat: add rust codes for array binary tree (#654)
* feat: add rust codes for array binary tree

* update tree_node.rs

* update: add implementation of vec_to_tree and tree_to_vec

* update tree_node.rs

* Update tree_node.rs

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-07-26 09:15:58 +08:00
krahets
35973068a7 Prepare for release 1.0.0b4 2023-07-26 03:15:49 +08:00
krahets
b067016bfa Update preorder_traversal_iii. 2023-07-25 16:39:38 +08:00
krahets
90af225dae Remove -> None for Python functions 2023-07-24 22:34:05 +08:00
gonglja
ac0f405f9a
Fix quadraticRecur bug in space_complexity.c (#651)
* fix(codes/cpp): Memory leak fix: the space was not freed when pop removed the element.

* fix(codes/cpp): Fix access error when printArray(arr, 0)

* Update PrintUtil.hpp

* fix(codes/c): Fix some errors of cmake build

* feat(codes/c): Add hashing_search.c

* styles(codes/c): Modify function description

* styles(codes/c): Modify binary_search.c code style

* fix(codes/c): Fix the problem in binary_tree_bfs.c and the problem that the memory is not released.

* feat: Add preorder_traversal_i_compact.c

* feat(codes/c): Add head_sort.c

* feat(codes/c): Add bucket_sort.c

* feat(codes/c): Add binary_search_edge.c

* fix(codes/c): Add programs that are not managed by cmake (c code)

* feat(codes/c): Add selection_sort.c

* style(codes/c): Change swap in selection_sort.c to `selectionSort`

* styles(codes/c): Change style.

* fix(codes/c): Fix some formatting errors and temporarily remove backtracking chapters

* fix(codes/c): Fix quadraticRecur bug in `space_complexity.c`

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-07-24 22:29:13 +08:00
Night Cruising
fdbe275fc9
fix: check the rust codes and fix them (#653)
* fix: check the rust codes and fix it

* Update binary_tree_bfs.rs

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-07-24 22:27:26 +08:00
hpstory
978d3c2ed7
fix(csharp): reformat csharp codes and docs (#652)
* fix(csharp): reformat the C# codes and docs

* Update time_complexity.md

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-07-24 19:50:00 +08:00
krahets
1777a16865 Fix Go comment and link 2023-07-24 13:11:00 +08:00
nuomi1
9ab4b0b15c
Feature/array representation of tree swift (#649)
* refactor: encode & decode Tree

* style: build warning

* feat: add Swift codes for array_representation_of_tree article
2023-07-24 12:46:48 +08:00
Reanon
c1adeb2399
feat(go/dp): support dynamic programming (#622)
* feat(go/dp): support climbing stairs

* feat(go/dp): support knapsack

* feat(go/dp): coin_change & edit_distance
2023-07-24 03:08:35 +08:00
Reanon
10e5e7499b
feat(go/greedy): add greedy in go code (#648) 2023-07-24 03:06:47 +08:00
Night Cruising
41db3701ab
Update max_product_cutting.java (#647) 2023-07-24 03:05:57 +08:00
Night Cruising
9d56622c75
feat: add rust codes for chapter greedy (#646)
* feat: add rust codes for chapter greedy

* Update max_product_cutting.rs

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-07-22 20:35:57 +08:00
hpstory
b43de88f71
feat(csharp): add csharp code for charper greedy (#645) 2023-07-22 02:54:41 +08:00
Hongyun Zhang
eb695937a4
Add divide and conquer go code (#638)
* feat: Add Go code to binary search recursion under divide and conquer

* style: Code comment standardization

* style: modify function comment

* fix: fixed error when the list is empty

* Update print_utils.go

* Delete print_utils_test.go

* feat: add Go code to divide and conquer

* Update build_tree.go

* style: modify function name

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-07-21 22:16:42 +08:00
krahets
bba62bbe75 Fix the code of preorder_traversal_iii_compact 2023-07-21 22:08:26 +08:00
Yudong Jin
075c3abf88
Add the section of max product cutting problem. (#642) 2023-07-21 21:56:14 +08:00
krahets
1a55dbdf2e Finetune doc and code. 2023-07-21 15:18:01 +08:00
Yudong Jin
76f11ae168
Add the section of max capacity problem. (#639) 2023-07-21 15:16:51 +08:00
Hongyun Zhang
8068c42688
fixed error when the list is empty (#637)
* feat: Add Go code to binary search recursion under divide and conquer

* style: Code comment standardization

* style: modify function comment

* fix: fixed error when the list is empty

* Update print_utils.go

* Delete print_utils_test.go

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-07-21 14:47:37 +08:00
NI-SW
da2c71d936
add c code for graph operation (#601)
* Create chapter_graph

* Delete chapter_graph

* add C code for graph

* add C code for graph

* Create graph_adjacency_list.c

add C code for graph

* Update CMakeLists.txt

* Update format and output

* Update format and output

* Update format and output

* Update format and output

* Update format and output

* Update format and output

* Update format and output

* Update format and output

* Update format and output

* Update format and output

* Update format and output

* Update format and output

* Update format and output

* Update format and output

* Update format and output

* Update graph_adjacency_list.c

* Update CMakeLists.txt for c code of graph

* Update format of c code

* Update format of c code

* Update format of c code

* Update verticesList

Change the data structure of the storage list from a linked list to a linear table

* Update graph_adjacency_list.c

* Update graph_adjacency_matrix.c

* Create graph_adjacency_list_test.c

* Create graph_bfs

* Update CMakeLists.txt

* Update graph_adjacency_list.c

* mv graph_bfs to graph_bfs.c

* Update graph_bfs.c

* Delete graph_bfs

* Update graph_adjacency_list.c

* update c code for graph operation.

* Update CMakeLists.txt

* Update graph_dfs.c

* Update graph_dfs.c

* Update CMakeLists.txt

* Update graph_dfs.c

* Update note of graph_dfs.c

* Update graph_bfs.c

* Update graph_dfs.c

* Update graph_bfs.c

* Update output "初始化后,图为:" of graph_dfs.c

* Update graph_dfs.c

* Update graph_bfs.c

* Update graph_dfs.c

* Update name of arrayVertex

* Update name of arrayVertex

* Update note of graph_dfs.c

* Update note of graph_bfs.c

* Update graph_dfs.c

* Update graph_bfs.c

* Update graph_adjacency_matrix.c

* Update graph_adjacency_list_test.c

* Update graph_adjacency_list.c

* Update graph_dfs.c

* Update graph_bfs.c

* Update comment

* Update comment

* Update graph_adjacency_list.c

* Update graph_adjacency_matrix.c

* update comment

* update comment

* update comment for graph operation

* update comment of graph operation

* update comment

* update comment

---------

Co-authored-by: Yudong Jin <krahets@163.com>
Co-authored-by: libr <libr@info2soft.com>
2023-07-20 19:08:23 +08:00
Hongyun Zhang
4e4a13e1bb
feat: Add Go code to binary search recursion under divide and conquer (#630)
* feat: Add Go code to binary search recursion under divide and conquer

* style: Code comment standardization

* style: modify function comment
2023-07-20 18:57:28 +08:00
hpstory
2af77ff565
feat(csharp): add csharp code for array binary tree (#632) 2023-07-20 18:54:40 +08:00
Yudong Jin
2b7d7aa827
Add the chapter of greedy. (#633)
Add the section of fractional knapsack.
2023-07-20 18:26:54 +08:00
krahets
c54536d1a1 Modify the problem of preorder_traversal_iii 2023-07-19 16:37:12 +08:00
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
hpstory
7a6fd4b3dd
feat(csharp): add csharp code for charper divide and conquer (#628) 2023-07-19 01:19:49 +08:00
sjinzh
8737fc66dd
rust : add codes for chapter_divide_and_conquer (#621) 2023-07-19 00:32:05 +08:00
nuomi1
9ea8a73059
Feature/chapter dynamic programming swift (#608)
* feat: add Swift codes for intro_to_dynamic_programming article

* feat: add Swift codes for dp_problem_features article

* feat: add Swift codes for dp_solution_pipeline article

* feat: add Swift codes for knapsack_problem article

* feat: add Swift codes for unbounded_knapsack_problem article

* feat: add Swift codes for edit_distance_problem article
2023-07-18 12:49:03 +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
Night Cruising
a296786b2a
feat: add rust codes for chapter heap (#612)
Co-authored-by: Yudong Jin <krahets@163.com>
2023-07-16 15:40:25 +08:00
sjinzh
ead33ca863
zig : update codes style && rust : add codes for chapter_backtracking. (#613)
* zig : update codes style

* rust : add codes for chapter_backtracking

* zig : update codes style
2023-07-16 15:36:28 +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
Night Cruising
f5ea4fa1c6
feat: add rust codes for avl tree (#605)
* feat: add rust codes for avl tree

* fix a wrong usage of borrow method of RefCell

* Update avl_tree.rs

* fix comment indentation and field define of TreeNode

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-07-16 01:32:43 +08:00
sjinzh
b1f8857212
rust and zig : add codes for chapter_dynamic_programming (#606)
* rust : add codes for chapter_dynamic_programming

* zig : add codes for chapter_dynamic_programming

* rust : add codes for chapter_backtracking

* Update n_queens.rs

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-07-15 23:16:02 +08:00
hpstory
5c09add1ec
feat(csharp): add csharp code for edit distance (#604) 2023-07-14 13:34:28 +08:00
Night Cruising
c3add62dc7
feat: add rust codes for graph chapter (#598)
* feat: add rust codes for graph chapter

* update: remove Vertex and it's method to vertex.rs
2023-07-14 00:47:32 +08:00
hpstory
c9a8b0a9ea
feat(csharp): add csharp code for unbounded knapsack (#596) 2023-07-13 15:49:40 +08:00
Yudong Jin
c3f80e52af
Add the section of edit distance problem (#599) 2023-07-13 05:27:47 +08:00
Night Cruising
f548eae663
feat: add rust codes for bucket sort, counting sort and radix sort (#590)
* add rust codes for bucket sort, counting sort and radix sort

* update Cargo.toml for build
2023-07-12 00:29:39 +08:00
sjinzh
6733a4843c
rust : add codes for chapter_backtracking (#594)
* rust : add codes for chapter_backtracking

* Update subset_sum_ii.rs

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-07-12 00:01:57 +08:00
NI-SW
c36010b324
add C code for graph (#583)
* Create chapter_graph

* Delete chapter_graph

* add C code for graph

* add C code for graph

* Create graph_adjacency_list.c

add C code for graph

* Update CMakeLists.txt

* Update format and output

* Update format and output

* Update format and output

* Update format and output

* Update format and output

* Update format and output

* Update format and output

* Update format and output

* Update format and output

* Update format and output

* Update format and output

* Update format and output

* Update format and output

* Update format and output

* Update format and output

* Update graph_adjacency_list.c

* Update CMakeLists.txt for c code of graph

* Update format of c code

* Update format of c code

* Update format of c code

* Update verticesList

Change the data structure of the storage list from a linked list to a linear table

* Update graph_adjacency_list.c

* Update graph_adjacency_matrix.c

* Create graph_adjacency_list_test.c

* Create graph_bfs

* Update CMakeLists.txt

* Update graph_adjacency_list.c
2023-07-11 23:50:51 +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
hpstory
5ea016816a
fix(csharp): fix csharp method name in knapsack (#592)
* fix(csharp): fix csharp method name in knapsack

* feat(csharp): add csharp code for min path sum

* move INF define into method

* change INF to int max value
2023-07-10 17:34:54 +08:00
sjinzh
459449d41a
zig : upgrade codes && rust : add codes for chapter_searching and chapter_dynamic_programming. (#591)
* zig : update zig codes

* rust : add codes for linear_search and hashing_search

* rust : add codes for linear_search and hashing_search

* rust : add codes for chapter_dynamic_programming
2023-07-10 01:32:12 +08:00
Night Cruising
6c133d42d5
rust code for heap sort (#579) 2023-07-09 03:01:44 +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
hpstory
cbfb9e59ad
feat(csharp): add csharp code for knapsack (#585) 2023-07-08 05:28:39 +08:00
nuomi1
de4f8378a3
feat: add Swift codes for subset_sum_problem article (#584) 2023-07-08 05:27:40 +08:00
nuomi1
b4de2c0d13
feat: add Swift codes for top_k article (#578) 2023-07-06 03:16:14 +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
Jerry You
763955aa8b
fix: removeEdge not effects on graph in golang (#503)
* fix(graph/adjacency_list):removeEdge not effects on graph in golang

* remove unecessary package right now

* Delete go.sum

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-07-04 21:08:32 +08:00
hpstory
bf1bccc1ae
feat(csharp): add csharp code for charper dynamic programming (#574)
* feat(csharp): add csharp code for charper dynamic programming

* add climbing_stairs_constraint_dp
2023-07-03 16:44:43 +08:00
nuomi1
87076132e7
feat: add Swift codes for hash_algorithm article (#576) 2023-07-03 16:42:49 +08:00
nuomi1
7f8b0fff54
feat: add Swift codes for hash_collision article (#569)
* feat: add Swift codes for hash_collision article

* refactor: extract common Pair

* Update hash_map.md

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-07-01 20:39:55 +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
nuomi1
9611a8f135
fix: compiler error and reset root (#570) 2023-06-30 05:05:07 +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
hpstory
4722e7bca7
feat(csharp/hashing): add code and update docs to chapter hashing (#568)
* feat(csharp/hashing): add code and update docs to chapter hashing

* revert linked list to list
2023-06-26 23:08:55 +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
krahets
7876e3e88c Update Go code of subset sum. 2023-06-25 21:59:44 +08:00
WangSL
3b3841ba36
The Rust version of the selection sort. (#524)
* The Rust version of the selection sort.

* The Rust version of the binary_search_edge

* update,The Rust version of the binary_search_edge and selection_sort

* update,The Rust version of the binary_search_edge and selection_sort

* update The Rust version of the binary_search_edge and selection_sort
2023-06-25 21:00:24 +08:00
sjinzh
41b7b229a3
upgrade zig codes to 0.11.0-dev.3379+629f0d23b (#563)
* upgrade zig codes to 0.11.0-dev.3379+629f0d23b

* upgrade zig codes to 0.11.0-dev.3379+629f0d23b
2023-06-25 20:59:00 +08:00
liuyuxin
62e8f0df50
feat: complete Dart codes for chapter_hashing (#566) 2023-06-25 20:57:37 +08:00
hpstory
ff58d4113c
feat(csharp/backtracking): add subset_sum_i, _ii, _i_naive (#567) 2023-06-25 20:54:58 +08:00
Reanon
e4ba690005
feat(go): support new features with go code (#565)
* feat(go): support hash map chaining

* feat(go): support hash map open address

* feat(go): support simple hash

* feat(go): support top k heap

* feat(go): support subset sum I

* feat(go): support subset sum native

* feat(go): support subset sum II

* fix(go): fix some problem
2023-06-25 20:51:31 +08:00
krahets
504dff1728 Fix "函数" and "方法" 2023-06-24 16:37:56 +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
krahets
d62156fb58 Fix two_sum.js and .ts 2023-06-16 21:28:48 +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
hpstory
8334df1b2b
feat(csharp): add top_k (#554) 2023-06-14 18:49:42 +08:00
Yudong Jin
9563965a20
Add the codes of hashmap (#553)
of chaining and open addressing
2023-06-14 02:01:06 +08:00
krahets
d3e597af94 Update cmakelists.txt 2023-06-13 21:16:54 +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
0345a479a4 Fix some codes. 2023-06-06 02:03:27 +08:00
krahets
698c2e7fe5 Fix some codes and a figure. 2023-06-05 01:03:39 +08:00
Justin Tse
2532f06c7f
Add JavaScript and TypeScript code of heap sort, selection sort and binary search edge and Fix the indentation of TS code (#545)
* Fix the indentation of TS code

* Add JavaScript and TypeScript code of heap sort, selection sort and binary search edge

* Fix the style of JS and TS code
2023-06-05 00:20:11 +08:00
krahets
6377e3316a Fix a comment in my_list.xx 2023-06-03 22:18:28 +08:00
liuyuxin
d0b1bf9b1a
Update two_sum.dart (#544) 2023-06-02 20:23:27 +08:00
liuyuxin
281c0c618a
feat: modify some Dart codes and add Dart code blocks to the docs (#543) 2023-06-02 14:56:29 +08:00
liuyuxin
53e18bc6d6
feat: complete dart code for chapter_searching and chapter_sorting (#526) 2023-06-02 02:52:10 +08:00
gonglja
86209e0a7b
feat: Add C codes for bucket sort, heap sort, selection sort, binary search edge (#525)
* fix(codes/cpp): Memory leak fix: the space was not freed when pop removed the element.

* fix(codes/cpp): Fix access error when printArray(arr, 0)

* Update PrintUtil.hpp

* fix(codes/c): Fix some errors of cmake build

* feat(codes/c): Add hashing_search.c

* styles(codes/c): Modify function description

* styles(codes/c): Modify binary_search.c code style

* fix(codes/c): Fix the problem in binary_tree_bfs.c and the problem that the memory is not released.

* feat: Add preorder_traversal_i_compact.c

* feat(codes/c): Add head_sort.c

* feat(codes/c): Add bucket_sort.c

* feat(codes/c): Add binary_search_edge.c

* fix(codes/c): Add programs that are not managed by cmake (c code)

* feat(codes/c): Add selection_sort.c

* style(codes/c): Change swap in selection_sort.c to `selectionSort`

* styles(codes/c): Change style.

* fix(codes/c): Fix some formatting errors and temporarily remove backtracking chapters

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-06-02 02:51:35 +08:00
Yudong Jin
025051c81b
Add Dart codes to the documents. (#529) 2023-06-02 02:40:26 +08:00
hpstory
671fbc84ee
feat(csharp): add binary_search_edge, heap_sort, selection_sort (#527) 2023-06-01 18:52:18 +08:00
krahets
e35e2e31eb Add the figure of assembling blocks.
Update some texts.
2023-05-31 01:04:40 +08:00
liuyuxin
8247a611d7
Update Dart code to output same as Java (#522) 2023-05-30 13:00:16 +08:00
Reanon
5bbcb12979
feat(sort/search): support heap/selection_sort/binary_search_edge in go code (#521)
* feat(go): support binary search edge and testcase

* feat(go): support selection sort and testcase

* feat(go): support heap sort and testcase

* Update selection_sort_test.go

* Update selection_sort.go

* Update heap_sort.go

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-05-29 12:23:52 +08:00
nuomi1
56a4385202
feat: add Swift codes for heap_sort article (#520) 2023-05-29 12:20:32 +08:00
nuomi1
8bed60f0d7
feat: add Swift codes for selection_sort article (#519) 2023-05-28 17:51:35 +08:00
nuomi1
4ce20f6bbc
feat: add Swift codes for binary_search_edge article (#518) 2023-05-28 17:26:09 +08:00
krahets
6f76203dd9 Fix some mistakes. 2023-05-27 17:13:51 +08:00
krahets
fb72aa385e Polish some texts. 2023-05-26 20:34:48 +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
5dff1bd0e8 Update the insertion sort. 2023-05-24 00:33:27 +08:00
krahets
eb8df49993 Update bubble sort and insertion sort. 2023-05-23 21:20:14 +08:00
xBLACKICEx
abecea9ab6
feat(rust/tree): add binary_search_tree (#481)
*  feat(rust/tree): add binary_tree_dfs

*  feat(rust/tree): add binary_tree_bfs

* 🐞 fix(rust/tree): can't list to any kind of tree

* feat(rust/tree): add binary_search_tree

* Update binary_search_tree.rs

* 🐞 fix(rust/tree): corret writing mistakes

* 🦄 refactor(rust/tree): remove get_next_node() function

* Update binary_search_tree.rs

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-05-23 15:42:08 +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
Jefferson Huang
921d87c238
feat: add chapter_binary_search by dart (#506)
* feat: add chapter_sorting by dart

* feat: add chapter_searching by dart

* feat: add chapter_binary_search by dart

---------

Co-authored-by: huangjianqing <huangjianqing@52tt.com>
2023-05-21 02:31:15 +08:00
krahets
399e5df39a Polish some cotents. 2023-05-18 20:27:58 +08:00
Jefferson Huang
335bc29af2
feat: add chapter_sorting and chapter_searching by dart (#497)
* feat: add chapter_sorting by dart

* feat: add chapter_searching by dart

---------

Co-authored-by: huangjianqing <huangjianqing@52tt.com>
2023-05-18 19:05:48 +08:00
liuyuxin
ec4202031e
feat: add dart code for chapter_graph (#498) 2023-05-18 19:04:39 +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
f35020b335 Fix bucket_sort. 2023-05-15 19:54:07 +08:00
ZeYanLin
bae8298c8a
fix:range issue (#496) 2023-05-15 14:57:08 +08:00
Reanon
a6b3f72826
feat(go/backtracking): add go code (#488)
* feat(go/backtracking): add go code

* feat(backtracking): add n_queens in go

* feat(backtracking): add /preorder_traversal_i_compact in go

* feat(backtracking): add /preorder_traversal_ii_compact in go

* feat(backtracking): add /preorder_traversal_ii_template in go

* feat(backtracking): add preorder_traversal_iii_compact in go

* feat(backtracking): add preorder_traversal_test in go

* feat(backtracking): add permutations_i in go

* feat(backtracking): add permutations_ii in go

* feat(backtracking): add permutation_test in go

* feat(backtracking): fix bug in go

* Update permutations_i.go

---------

Co-authored-by: Yudong Jin <krahets@163.com>
2023-05-15 01:17:42 +08:00
nuomi1
170713c642
feat: add Swift codes for n_queens_problem article (#495)
* refactor: rename PreorderTraversalIIITemplate

* feat: add Swift codes for n_queens_problem article
2023-05-15 01:13:17 +08:00
krahets
649d8c4c86 Fix the indentation of JS and TS code. 2023-05-14 01:40:19 +08:00