From 145975b3357d094ac1f5595438afe1b155691da3 Mon Sep 17 00:00:00 2001 From: krahets Date: Mon, 24 Apr 2023 04:11:18 +0800 Subject: [PATCH] Rename the common modules in Java, C++ and C. --- codes/c/CMakeLists.txt | 1 - codes/c/chapter_array_and_linkedlist/array.c | 2 +- .../linked_list.c | 2 +- .../c/chapter_array_and_linkedlist/my_list.c | 2 +- codes/c/chapter_binary_search/binary_search.c | 2 +- .../space_complexity.c | 2 +- .../time_complexity.c | 2 +- .../worst_best_time_complexity.c | 2 +- codes/c/chapter_hashing/array_hash_map.c | 2 +- codes/c/chapter_heap/my_heap.c | 2 +- codes/c/chapter_searching/hashing_search.c | 2 +- codes/c/chapter_searching/leetcode_two_sum.c | 2 +- codes/c/chapter_searching/linear_search.c | 2 +- codes/c/chapter_sorting/bubble_sort.c | 2 +- codes/c/chapter_sorting/counting_sort.c | 2 +- codes/c/chapter_sorting/insertion_sort.c | 2 +- codes/c/chapter_sorting/merge_sort.c | 2 +- codes/c/chapter_sorting/quick_sort.c | 2 +- codes/c/chapter_sorting/radix_sort.c | 2 +- codes/c/chapter_stack_and_queue/array_deque.c | 2 +- codes/c/chapter_stack_and_queue/array_queue.c | 2 +- codes/c/chapter_stack_and_queue/array_stack.c | 2 +- .../linkedlist_deque.c | 2 +- .../linkedlist_queue.c | 2 +- .../linkedlist_stack.c | 2 +- codes/c/chapter_tree/avl_tree.c | 2 +- codes/c/chapter_tree/binary_search_tree.c | 2 +- codes/c/chapter_tree/binary_tree.c | 2 +- codes/c/chapter_tree/binary_tree_bfs.c | 2 +- codes/c/chapter_tree/binary_tree_dfs.c | 2 +- codes/c/include/CMakeLists.txt | 5 - codes/c/utils/CMakeLists.txt | 5 + codes/c/{include/include.h => utils/common.h} | 2 +- .../include_test.c => utils/common_test.c} | 2 +- codes/c/{include => utils}/list_node.h | 0 codes/c/{include => utils}/print_util.h | 0 codes/c/{include => utils}/tree_node.h | 0 codes/c/{include => utils}/uthash.h | 0 .../chapter_array_and_linkedlist/array.cpp | 2 +- .../linked_list.cpp | 2 +- .../cpp/chapter_array_and_linkedlist/list.cpp | 2 +- .../chapter_array_and_linkedlist/my_list.cpp | 2 +- .../chapter_backtracking/permutations_i.cpp | 2 +- .../chapter_backtracking/permutations_ii.cpp | 2 +- .../preorder_traversal_i_compact.cpp | 2 +- .../preorder_traversal_ii_compact.cpp | 2 +- .../preorder_traversal_iii_compact.cpp | 2 +- .../preorder_traversal_iii_template.cpp | 2 +- .../chapter_binary_search/binary_search.cpp | 2 +- .../space_complexity.cpp | 2 +- .../time_complexity.cpp | 2 +- .../worst_best_time_complexity.cpp | 2 +- .../chapter_graph/graph_adjacency_list.cpp | 2 +- .../chapter_graph/graph_adjacency_matrix.cpp | 2 +- codes/cpp/chapter_graph/graph_bfs.cpp | 2 +- codes/cpp/chapter_graph/graph_dfs.cpp | 2 +- codes/cpp/chapter_hashing/array_hash_map.cpp | 2 +- codes/cpp/chapter_hashing/hash_map.cpp | 2 +- codes/cpp/chapter_heap/heap.cpp | 2 +- codes/cpp/chapter_heap/my_heap.cpp | 2 +- .../cpp/chapter_searching/hashing_search.cpp | 2 +- .../chapter_searching/leetcode_two_sum.cpp | 2 +- codes/cpp/chapter_searching/linear_search.cpp | 2 +- codes/cpp/chapter_sorting/bubble_sort.cpp | 2 +- codes/cpp/chapter_sorting/bucket_sort.cpp | 2 +- codes/cpp/chapter_sorting/counting_sort.cpp | 2 +- codes/cpp/chapter_sorting/insertion_sort.cpp | 2 +- codes/cpp/chapter_sorting/merge_sort.cpp | 2 +- codes/cpp/chapter_sorting/quick_sort.cpp | 2 +- codes/cpp/chapter_sorting/radix_sort.cpp | 2 +- .../chapter_stack_and_queue/array_deque.cpp | 2 +- .../chapter_stack_and_queue/array_queue.cpp | 2 +- .../chapter_stack_and_queue/array_stack.cpp | 2 +- codes/cpp/chapter_stack_and_queue/deque.cpp | 2 +- .../linkedlist_deque.cpp | 2 +- .../linkedlist_queue.cpp | 2 +- .../linkedlist_stack.cpp | 2 +- codes/cpp/chapter_stack_and_queue/queue.cpp | 2 +- codes/cpp/chapter_stack_and_queue/stack.cpp | 2 +- codes/cpp/chapter_tree/avl_tree.cpp | 2 +- codes/cpp/chapter_tree/binary_search_tree.cpp | 2 +- codes/cpp/chapter_tree/binary_tree.cpp | 2 +- codes/cpp/chapter_tree/binary_tree_bfs.cpp | 2 +- codes/cpp/chapter_tree/binary_tree_dfs.cpp | 2 +- codes/cpp/include/CMakeLists.txt | 4 - codes/cpp/utils/CMakeLists.txt | 4 + .../{include/include.hpp => utils/common.hpp} | 10 +- .../ListNode.hpp => utils/list_node.hpp} | 2 +- .../PrintUtil.hpp => utils/print_utils.hpp} | 6 +- .../TreeNode.hpp => utils/tree_node.hpp} | 2 +- .../{include/Vertex.hpp => utils/vertex.hpp} | 2 +- codes/csharp/include/Vertex.cs | 2 +- codes/dart/utils/list_node.dart | 2 +- codes/dart/utils/print_util.dart | 2 +- .../linked_list.java | 2 +- .../preorder_traversal_i_compact.java | 2 +- .../preorder_traversal_ii_compact.java | 2 +- .../preorder_traversal_iii_compact.java | 2 +- .../preorder_traversal_iii_template.java | 2 +- .../space_complexity.java | 2 +- .../chapter_graph/graph_adjacency_list.java | 2 +- .../chapter_graph/graph_adjacency_matrix.java | 2 +- codes/java/chapter_graph/graph_bfs.java | 2 +- codes/java/chapter_graph/graph_dfs.java | 2 +- codes/java/chapter_hashing/hash_map.java | 2 +- codes/java/chapter_heap/heap.java | 2 +- codes/java/chapter_heap/my_heap.java | 2 +- .../chapter_searching/hashing_search.java | 2 +- .../java/chapter_searching/linear_search.java | 2 +- .../linkedlist_stack.java | 2 +- codes/java/chapter_tree/avl_tree.java | 2 +- .../java/chapter_tree/binary_search_tree.java | 2 +- codes/java/chapter_tree/binary_tree.java | 2 +- codes/java/chapter_tree/binary_tree_bfs.java | 2 +- codes/java/chapter_tree/binary_tree_dfs.java | 2 +- codes/java/include/ListNode.java | 36 ------ codes/java/include/PrintUtil.java | 118 ------------------ codes/java/include/TreeNode.java | 67 ---------- codes/java/include/Vertex.java | 36 ------ .../permutations_problem.md | 2 +- 120 files changed, 122 insertions(+), 380 deletions(-) delete mode 100644 codes/c/include/CMakeLists.txt create mode 100644 codes/c/utils/CMakeLists.txt rename codes/c/{include/include.h => utils/common.h} (96%) rename codes/c/{include/include_test.c => utils/common_test.c} (97%) rename codes/c/{include => utils}/list_node.h (100%) rename codes/c/{include => utils}/print_util.h (100%) rename codes/c/{include => utils}/tree_node.h (100%) rename codes/c/{include => utils}/uthash.h (100%) delete mode 100644 codes/cpp/include/CMakeLists.txt create mode 100644 codes/cpp/utils/CMakeLists.txt rename codes/cpp/{include/include.hpp => utils/common.hpp} (74%) rename codes/cpp/{include/ListNode.hpp => utils/list_node.hpp} (97%) rename codes/cpp/{include/PrintUtil.hpp => utils/print_utils.hpp} (98%) rename codes/cpp/{include/TreeNode.hpp => utils/tree_node.hpp} (98%) rename codes/cpp/{include/Vertex.hpp => utils/vertex.hpp} (96%) delete mode 100755 codes/java/include/ListNode.java delete mode 100755 codes/java/include/PrintUtil.java delete mode 100644 codes/java/include/TreeNode.java delete mode 100644 codes/java/include/Vertex.java diff --git a/codes/c/CMakeLists.txt b/codes/c/CMakeLists.txt index 8a58eaa9..6128fceb 100644 --- a/codes/c/CMakeLists.txt +++ b/codes/c/CMakeLists.txt @@ -5,7 +5,6 @@ set(CMAKE_C_STANDARD 11) include_directories(./include) -add_subdirectory(include) add_subdirectory(chapter_computational_complexity) add_subdirectory(chapter_array_and_linkedlist) add_subdirectory(chapter_stack_and_queue) diff --git a/codes/c/chapter_array_and_linkedlist/array.c b/codes/c/chapter_array_and_linkedlist/array.c index 39bfd1be..4bf8fff5 100644 --- a/codes/c/chapter_array_and_linkedlist/array.c +++ b/codes/c/chapter_array_and_linkedlist/array.c @@ -4,7 +4,7 @@ * Author: MolDuM (moldum@163.com) */ -#include "../include/include.h" +#include "../utils/common.h" /* 随机返回一个数组元素 */ int randomAccess(int *nums, int size) { diff --git a/codes/c/chapter_array_and_linkedlist/linked_list.c b/codes/c/chapter_array_and_linkedlist/linked_list.c index af2ad758..8550bfc6 100644 --- a/codes/c/chapter_array_and_linkedlist/linked_list.c +++ b/codes/c/chapter_array_and_linkedlist/linked_list.c @@ -4,7 +4,7 @@ * Author: Zero (glj0@outlook.com) */ -#include "../include/include.h" +#include "../utils/common.h" /* 在链表的节点 n0 之后插入节点 P */ void insert(ListNode *n0, ListNode *P) { diff --git a/codes/c/chapter_array_and_linkedlist/my_list.c b/codes/c/chapter_array_and_linkedlist/my_list.c index fce46517..f8ab8f56 100644 --- a/codes/c/chapter_array_and_linkedlist/my_list.c +++ b/codes/c/chapter_array_and_linkedlist/my_list.c @@ -4,7 +4,7 @@ * Author: Zero (glj0@outlook.com) */ -#include "../include/include.h" +#include "../utils/common.h" /* 列表类简易实现 */ struct myList { diff --git a/codes/c/chapter_binary_search/binary_search.c b/codes/c/chapter_binary_search/binary_search.c index 2ec3a230..250b04e6 100644 --- a/codes/c/chapter_binary_search/binary_search.c +++ b/codes/c/chapter_binary_search/binary_search.c @@ -4,7 +4,7 @@ * Author: Guanngxu (446678850@qq.com) */ -#include "../include/include.h" +#include "../utils/common.h" /* 二分查找(双闭区间) */ int binarySearch(int *nums, int len, int target) { diff --git a/codes/c/chapter_computational_complexity/space_complexity.c b/codes/c/chapter_computational_complexity/space_complexity.c index 111ea246..2c9df0ee 100644 --- a/codes/c/chapter_computational_complexity/space_complexity.c +++ b/codes/c/chapter_computational_complexity/space_complexity.c @@ -3,7 +3,7 @@ * Created Time: 2023-04-15 * Author: Gonglja (glj0@outlook.com) */ -#include "../include/include.h" +#include "../utils/common.h" /* 函数 */ int func() { diff --git a/codes/c/chapter_computational_complexity/time_complexity.c b/codes/c/chapter_computational_complexity/time_complexity.c index ef551df8..c9a2fd2d 100644 --- a/codes/c/chapter_computational_complexity/time_complexity.c +++ b/codes/c/chapter_computational_complexity/time_complexity.c @@ -4,7 +4,7 @@ * Author: sjinzh (sjinzh@gmail.com) */ -#include "../include/include.h" +#include "../utils/common.h" /* 常数阶 */ int constant(int n) { diff --git a/codes/c/chapter_computational_complexity/worst_best_time_complexity.c b/codes/c/chapter_computational_complexity/worst_best_time_complexity.c index 68af78fe..ef00a7a5 100644 --- a/codes/c/chapter_computational_complexity/worst_best_time_complexity.c +++ b/codes/c/chapter_computational_complexity/worst_best_time_complexity.c @@ -4,7 +4,7 @@ * Author: sjinzh (sjinzh@gmail.com) */ -#include "../include/include.h" +#include "../utils/common.h" /* 生成一个数组,元素为 { 1, 2, ..., n },顺序被打乱 */ int *randomNumbers(int n) { diff --git a/codes/c/chapter_hashing/array_hash_map.c b/codes/c/chapter_hashing/array_hash_map.c index 1159fc04..9b2a0cf4 100644 --- a/codes/c/chapter_hashing/array_hash_map.c +++ b/codes/c/chapter_hashing/array_hash_map.c @@ -4,7 +4,7 @@ * Author: Guanngxu (446678850@qq.com) */ -#include "../include/include.h" +#include "../utils/common.h" /* 哈希表默认数组大小 */ # define HASH_MAP_DEFAULT_SIZE 100 diff --git a/codes/c/chapter_heap/my_heap.c b/codes/c/chapter_heap/my_heap.c index 2b6cedf1..d9f7729f 100644 --- a/codes/c/chapter_heap/my_heap.c +++ b/codes/c/chapter_heap/my_heap.c @@ -4,7 +4,7 @@ * Author: Reanon (793584285@qq.com) */ -#include "../include/include.h" +#include "../utils/common.h" #define MAX_SIZE 5000 diff --git a/codes/c/chapter_searching/hashing_search.c b/codes/c/chapter_searching/hashing_search.c index 24ad7b79..82664908 100644 --- a/codes/c/chapter_searching/hashing_search.c +++ b/codes/c/chapter_searching/hashing_search.c @@ -4,7 +4,7 @@ * Author: Gonglja (glj0@outlook.com) */ -#include "../include/include.h" +#include "../utils/common.h" /* 哈希表 */ struct hashTable { diff --git a/codes/c/chapter_searching/leetcode_two_sum.c b/codes/c/chapter_searching/leetcode_two_sum.c index 969bee80..d9088ee5 100644 --- a/codes/c/chapter_searching/leetcode_two_sum.c +++ b/codes/c/chapter_searching/leetcode_two_sum.c @@ -4,7 +4,7 @@ * Author: Reanon (793584285@qq.com) */ -#include "../include/include.h" +#include "../utils/common.h" /* 方法一:暴力枚举 */ int *twoSumBruteForce(int *nums, int numsSize, int target, int *returnSize) { diff --git a/codes/c/chapter_searching/linear_search.c b/codes/c/chapter_searching/linear_search.c index 9261721b..9c97cd10 100644 --- a/codes/c/chapter_searching/linear_search.c +++ b/codes/c/chapter_searching/linear_search.c @@ -4,7 +4,7 @@ * Author: Guanngxu (446678850@qq.com) */ -#include "../include/include.h" +#include "../utils/common.h" /* 线性查找(数组) */ int linearSearchArray(int *nums, int len, int target) { diff --git a/codes/c/chapter_sorting/bubble_sort.c b/codes/c/chapter_sorting/bubble_sort.c index 5a21d767..59181d3e 100644 --- a/codes/c/chapter_sorting/bubble_sort.c +++ b/codes/c/chapter_sorting/bubble_sort.c @@ -4,7 +4,7 @@ * Author: Listening (https://github.com/L-Super) */ -#include "../include/include.h" +#include "../utils/common.h" /* 冒泡排序 */ void bubbleSort(int nums[], int size) { diff --git a/codes/c/chapter_sorting/counting_sort.c b/codes/c/chapter_sorting/counting_sort.c index 1510e641..dea63303 100644 --- a/codes/c/chapter_sorting/counting_sort.c +++ b/codes/c/chapter_sorting/counting_sort.c @@ -4,7 +4,7 @@ * Author: Reanon (793584285@qq.com), Guanngxu (446678850@qq.com) */ -#include "../include/include.h" +#include "../utils/common.h" /* 计数排序 */ // 简单实现,无法用于排序对象 diff --git a/codes/c/chapter_sorting/insertion_sort.c b/codes/c/chapter_sorting/insertion_sort.c index 632335ef..32ca1e9b 100644 --- a/codes/c/chapter_sorting/insertion_sort.c +++ b/codes/c/chapter_sorting/insertion_sort.c @@ -4,7 +4,7 @@ * Author: Listening (https://github.com/L-Super) */ -#include "../include/include.h" +#include "../utils/common.h" /* 插入排序 */ void insertionSort(int nums[], int size) { diff --git a/codes/c/chapter_sorting/merge_sort.c b/codes/c/chapter_sorting/merge_sort.c index 6b291649..0a3b934a 100644 --- a/codes/c/chapter_sorting/merge_sort.c +++ b/codes/c/chapter_sorting/merge_sort.c @@ -4,7 +4,7 @@ * Author: Guanngxu (446678850@qq.com) */ -#include "../include/include.h" +#include "../utils/common.h" /* 合并左子数组和右子数组 */ // 左子数组区间 [left, mid] diff --git a/codes/c/chapter_sorting/quick_sort.c b/codes/c/chapter_sorting/quick_sort.c index 66ded35e..b1648eba 100644 --- a/codes/c/chapter_sorting/quick_sort.c +++ b/codes/c/chapter_sorting/quick_sort.c @@ -4,7 +4,7 @@ * Author: Reanon (793584285@qq.com) */ -#include "../include/include.h" +#include "../utils/common.h" /* 元素交换 */ void swap(int nums[], int i, int j) { diff --git a/codes/c/chapter_sorting/radix_sort.c b/codes/c/chapter_sorting/radix_sort.c index 65870a6a..be74e6db 100644 --- a/codes/c/chapter_sorting/radix_sort.c +++ b/codes/c/chapter_sorting/radix_sort.c @@ -4,7 +4,7 @@ * Author: Reanon (793584285@qq.com) */ -#include "../include/include.h" +#include "../utils/common.h" /* 获取元素 num 的第 k 位,其中 exp = 10^(k-1) */ int digit(int num, int exp) { diff --git a/codes/c/chapter_stack_and_queue/array_deque.c b/codes/c/chapter_stack_and_queue/array_deque.c index e7c4d896..c2773899 100644 --- a/codes/c/chapter_stack_and_queue/array_deque.c +++ b/codes/c/chapter_stack_and_queue/array_deque.c @@ -4,7 +4,7 @@ * Author: Gonglja (glj0@outlook.com) */ -#include "../include/include.h" +#include "../utils/common.h" /* 基于环形数组实现的双向队列 */ struct arrayDeque { diff --git a/codes/c/chapter_stack_and_queue/array_queue.c b/codes/c/chapter_stack_and_queue/array_queue.c index 6aaedf41..da8fd27a 100644 --- a/codes/c/chapter_stack_and_queue/array_queue.c +++ b/codes/c/chapter_stack_and_queue/array_queue.c @@ -4,7 +4,7 @@ * Author: Zero (glj0@outlook.com) */ -#include "../include/include.h" +#include "../utils/common.h" /* 基于环形数组实现的队列 */ struct arrayQueue { diff --git a/codes/c/chapter_stack_and_queue/array_stack.c b/codes/c/chapter_stack_and_queue/array_stack.c index c96c1ffb..4eec6e3f 100644 --- a/codes/c/chapter_stack_and_queue/array_stack.c +++ b/codes/c/chapter_stack_and_queue/array_stack.c @@ -4,7 +4,7 @@ * Author: Zero (glj0@outlook.com) */ -#include "../include/include.h" +#include "../utils/common.h" #define MAX_SIZE 5000 diff --git a/codes/c/chapter_stack_and_queue/linkedlist_deque.c b/codes/c/chapter_stack_and_queue/linkedlist_deque.c index 170f524e..186a1f4b 100644 --- a/codes/c/chapter_stack_and_queue/linkedlist_deque.c +++ b/codes/c/chapter_stack_and_queue/linkedlist_deque.c @@ -4,7 +4,7 @@ * Author: Gonglja (glj0@outlook.com) */ -#include "../include/include.h" +#include "../utils/common.h" /* 双向链表节点 */ struct doublyListNode { diff --git a/codes/c/chapter_stack_and_queue/linkedlist_queue.c b/codes/c/chapter_stack_and_queue/linkedlist_queue.c index b5a208f4..b579b827 100644 --- a/codes/c/chapter_stack_and_queue/linkedlist_queue.c +++ b/codes/c/chapter_stack_and_queue/linkedlist_queue.c @@ -4,7 +4,7 @@ * Author: Gonglja (glj0@outlook.com) */ -#include "../include/include.h" +#include "../utils/common.h" /* 基于链表实现的队列 */ struct linkedListQueue { diff --git a/codes/c/chapter_stack_and_queue/linkedlist_stack.c b/codes/c/chapter_stack_and_queue/linkedlist_stack.c index 92872b55..d47b2911 100644 --- a/codes/c/chapter_stack_and_queue/linkedlist_stack.c +++ b/codes/c/chapter_stack_and_queue/linkedlist_stack.c @@ -4,7 +4,7 @@ * Author: Zero (glj0@outlook.com) */ -#include "../include/include.h" +#include "../utils/common.h" /* 基于链表实现的栈 */ struct linkedListStack { diff --git a/codes/c/chapter_tree/avl_tree.c b/codes/c/chapter_tree/avl_tree.c index 4222482d..7838a9fa 100644 --- a/codes/c/chapter_tree/avl_tree.c +++ b/codes/c/chapter_tree/avl_tree.c @@ -4,7 +4,7 @@ * Author: Reanon (793584285@qq.com) */ -#include "../include/include.h" +#include "../utils/common.h" /* AVL Tree */ struct aVLTree { diff --git a/codes/c/chapter_tree/binary_search_tree.c b/codes/c/chapter_tree/binary_search_tree.c index 34f81b23..7e7da8dd 100644 --- a/codes/c/chapter_tree/binary_search_tree.c +++ b/codes/c/chapter_tree/binary_search_tree.c @@ -4,7 +4,7 @@ * Author: Reanon (793584285@qq.com) */ -#include "../include/include.h" +#include "../utils/common.h" /* 二叉搜索树 */ struct binarySearchTree { diff --git a/codes/c/chapter_tree/binary_tree.c b/codes/c/chapter_tree/binary_tree.c index 4b6413eb..1254d453 100644 --- a/codes/c/chapter_tree/binary_tree.c +++ b/codes/c/chapter_tree/binary_tree.c @@ -4,7 +4,7 @@ * Author: Reanon (793584285@qq.com) */ -#include "../include/include.h" +#include "../utils/common.h" /* Driver Code */ int main() { diff --git a/codes/c/chapter_tree/binary_tree_bfs.c b/codes/c/chapter_tree/binary_tree_bfs.c index d20bc543..8e770b49 100644 --- a/codes/c/chapter_tree/binary_tree_bfs.c +++ b/codes/c/chapter_tree/binary_tree_bfs.c @@ -4,7 +4,7 @@ * Author: Reanon (793584285@qq.com) */ -#include "../include/include.h" +#include "../utils/common.h" /* 层序遍历 */ int *levelOrder(TreeNode *root, int *size) { diff --git a/codes/c/chapter_tree/binary_tree_dfs.c b/codes/c/chapter_tree/binary_tree_dfs.c index ab297753..d82dcf5e 100644 --- a/codes/c/chapter_tree/binary_tree_dfs.c +++ b/codes/c/chapter_tree/binary_tree_dfs.c @@ -4,7 +4,7 @@ * Author: Reanon (793584285@qq.com) */ -#include "../include/include.h" +#include "../utils/common.h" /* 辅助数组,用于存储遍历序列 */ int *arr; diff --git a/codes/c/include/CMakeLists.txt b/codes/c/include/CMakeLists.txt deleted file mode 100644 index ed9b851a..00000000 --- a/codes/c/include/CMakeLists.txt +++ /dev/null @@ -1,5 +0,0 @@ -add_executable(include - include_test.c - include.h print_util.h - list_node.h tree_node.h - uthash.h) \ No newline at end of file diff --git a/codes/c/utils/CMakeLists.txt b/codes/c/utils/CMakeLists.txt new file mode 100644 index 00000000..c1ece2e3 --- /dev/null +++ b/codes/c/utils/CMakeLists.txt @@ -0,0 +1,5 @@ +add_executable(utils + common_test.c + common.h print_util.h + list_node.h tree_node.h + uthash.h) \ No newline at end of file diff --git a/codes/c/include/include.h b/codes/c/utils/common.h similarity index 96% rename from codes/c/include/include.h rename to codes/c/utils/common.h index f08c75a1..e5565f8e 100644 --- a/codes/c/include/include.h +++ b/codes/c/utils/common.h @@ -1,5 +1,5 @@ /** - * File: include.h + * File: common.h * Created Time: 2022-12-20 * Author: MolDuM (moldum@163.com)、Reanon (793584285@qq.com) */ diff --git a/codes/c/include/include_test.c b/codes/c/utils/common_test.c similarity index 97% rename from codes/c/include/include_test.c rename to codes/c/utils/common_test.c index 282de927..5a4942df 100644 --- a/codes/c/include/include_test.c +++ b/codes/c/utils/common_test.c @@ -4,7 +4,7 @@ * Author: Reanon (793584285@qq.com) */ -#include "include.h" +#include "common.h" void testListNode() { int nums[] = {2, 3, 5, 6, 7}; diff --git a/codes/c/include/list_node.h b/codes/c/utils/list_node.h similarity index 100% rename from codes/c/include/list_node.h rename to codes/c/utils/list_node.h diff --git a/codes/c/include/print_util.h b/codes/c/utils/print_util.h similarity index 100% rename from codes/c/include/print_util.h rename to codes/c/utils/print_util.h diff --git a/codes/c/include/tree_node.h b/codes/c/utils/tree_node.h similarity index 100% rename from codes/c/include/tree_node.h rename to codes/c/utils/tree_node.h diff --git a/codes/c/include/uthash.h b/codes/c/utils/uthash.h similarity index 100% rename from codes/c/include/uthash.h rename to codes/c/utils/uthash.h diff --git a/codes/cpp/chapter_array_and_linkedlist/array.cpp b/codes/cpp/chapter_array_and_linkedlist/array.cpp index b839ba71..0d909f66 100644 --- a/codes/cpp/chapter_array_and_linkedlist/array.cpp +++ b/codes/cpp/chapter_array_and_linkedlist/array.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 随机返回一个数组元素 */ int randomAccess(int *nums, int size) { diff --git a/codes/cpp/chapter_array_and_linkedlist/linked_list.cpp b/codes/cpp/chapter_array_and_linkedlist/linked_list.cpp index 0116a682..ecf3615c 100644 --- a/codes/cpp/chapter_array_and_linkedlist/linked_list.cpp +++ b/codes/cpp/chapter_array_and_linkedlist/linked_list.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 在链表的节点 n0 之后插入节点 P */ void insert(ListNode *n0, ListNode *P) { diff --git a/codes/cpp/chapter_array_and_linkedlist/list.cpp b/codes/cpp/chapter_array_and_linkedlist/list.cpp index 5c70746c..d7ec60a6 100644 --- a/codes/cpp/chapter_array_and_linkedlist/list.cpp +++ b/codes/cpp/chapter_array_and_linkedlist/list.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* Driver Code */ int main() { diff --git a/codes/cpp/chapter_array_and_linkedlist/my_list.cpp b/codes/cpp/chapter_array_and_linkedlist/my_list.cpp index 0a659eca..37339357 100644 --- a/codes/cpp/chapter_array_and_linkedlist/my_list.cpp +++ b/codes/cpp/chapter_array_and_linkedlist/my_list.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 列表类简易实现 */ class MyList { diff --git a/codes/cpp/chapter_backtracking/permutations_i.cpp b/codes/cpp/chapter_backtracking/permutations_i.cpp index 1f268fc6..41704cee 100644 --- a/codes/cpp/chapter_backtracking/permutations_i.cpp +++ b/codes/cpp/chapter_backtracking/permutations_i.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 回溯算法:全排列 I */ void backtrack(vector &state, const vector &choices, vector &selected, vector> &res) { diff --git a/codes/cpp/chapter_backtracking/permutations_ii.cpp b/codes/cpp/chapter_backtracking/permutations_ii.cpp index b06b34fa..a164f128 100644 --- a/codes/cpp/chapter_backtracking/permutations_ii.cpp +++ b/codes/cpp/chapter_backtracking/permutations_ii.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 回溯算法:全排列 II */ void backtrack(vector &state, const vector &choices, vector &selected, vector> &res) { diff --git a/codes/cpp/chapter_backtracking/preorder_traversal_i_compact.cpp b/codes/cpp/chapter_backtracking/preorder_traversal_i_compact.cpp index 5e8bcaf8..f18a5b9c 100644 --- a/codes/cpp/chapter_backtracking/preorder_traversal_i_compact.cpp +++ b/codes/cpp/chapter_backtracking/preorder_traversal_i_compact.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" vector res; diff --git a/codes/cpp/chapter_backtracking/preorder_traversal_ii_compact.cpp b/codes/cpp/chapter_backtracking/preorder_traversal_ii_compact.cpp index c3f78f19..e1511256 100644 --- a/codes/cpp/chapter_backtracking/preorder_traversal_ii_compact.cpp +++ b/codes/cpp/chapter_backtracking/preorder_traversal_ii_compact.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" vector path; vector> res; diff --git a/codes/cpp/chapter_backtracking/preorder_traversal_iii_compact.cpp b/codes/cpp/chapter_backtracking/preorder_traversal_iii_compact.cpp index 8e5d1733..26fe1f14 100644 --- a/codes/cpp/chapter_backtracking/preorder_traversal_iii_compact.cpp +++ b/codes/cpp/chapter_backtracking/preorder_traversal_iii_compact.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" vector path; vector> res; diff --git a/codes/cpp/chapter_backtracking/preorder_traversal_iii_template.cpp b/codes/cpp/chapter_backtracking/preorder_traversal_iii_template.cpp index 6372b4a4..9c86422b 100644 --- a/codes/cpp/chapter_backtracking/preorder_traversal_iii_template.cpp +++ b/codes/cpp/chapter_backtracking/preorder_traversal_iii_template.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 判断当前状态是否为解 */ bool isSolution(vector &state) { diff --git a/codes/cpp/chapter_binary_search/binary_search.cpp b/codes/cpp/chapter_binary_search/binary_search.cpp index 3e1d60d3..8d7c4159 100644 --- a/codes/cpp/chapter_binary_search/binary_search.cpp +++ b/codes/cpp/chapter_binary_search/binary_search.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 二分查找(双闭区间) */ int binarySearch(vector &nums, int target) { diff --git a/codes/cpp/chapter_computational_complexity/space_complexity.cpp b/codes/cpp/chapter_computational_complexity/space_complexity.cpp index e8f49950..d0e284e0 100644 --- a/codes/cpp/chapter_computational_complexity/space_complexity.cpp +++ b/codes/cpp/chapter_computational_complexity/space_complexity.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 函数 */ int func() { diff --git a/codes/cpp/chapter_computational_complexity/time_complexity.cpp b/codes/cpp/chapter_computational_complexity/time_complexity.cpp index 426fa014..253605ce 100644 --- a/codes/cpp/chapter_computational_complexity/time_complexity.cpp +++ b/codes/cpp/chapter_computational_complexity/time_complexity.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 常数阶 */ int constant(int n) { diff --git a/codes/cpp/chapter_computational_complexity/worst_best_time_complexity.cpp b/codes/cpp/chapter_computational_complexity/worst_best_time_complexity.cpp index 3090fd76..0a6e562f 100644 --- a/codes/cpp/chapter_computational_complexity/worst_best_time_complexity.cpp +++ b/codes/cpp/chapter_computational_complexity/worst_best_time_complexity.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 生成一个数组,元素为 { 1, 2, ..., n },顺序被打乱 */ vector randomNumbers(int n) { diff --git a/codes/cpp/chapter_graph/graph_adjacency_list.cpp b/codes/cpp/chapter_graph/graph_adjacency_list.cpp index 5b0c49a3..0fad9ac7 100644 --- a/codes/cpp/chapter_graph/graph_adjacency_list.cpp +++ b/codes/cpp/chapter_graph/graph_adjacency_list.cpp @@ -4,7 +4,7 @@ * Author: what-is-me (whatisme@outlook.jp), Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 基于邻接表实现的无向图类 */ class GraphAdjList { diff --git a/codes/cpp/chapter_graph/graph_adjacency_matrix.cpp b/codes/cpp/chapter_graph/graph_adjacency_matrix.cpp index 781d9adc..1b36bd50 100644 --- a/codes/cpp/chapter_graph/graph_adjacency_matrix.cpp +++ b/codes/cpp/chapter_graph/graph_adjacency_matrix.cpp @@ -4,7 +4,7 @@ * Author: what-is-me (whatisme@outlook.jp) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 基于邻接矩阵实现的无向图类 */ class GraphAdjMat { diff --git a/codes/cpp/chapter_graph/graph_bfs.cpp b/codes/cpp/chapter_graph/graph_bfs.cpp index 62b849c2..9106df88 100644 --- a/codes/cpp/chapter_graph/graph_bfs.cpp +++ b/codes/cpp/chapter_graph/graph_bfs.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" #include "./graph_adjacency_list.cpp" /* 广度优先遍历 BFS */ diff --git a/codes/cpp/chapter_graph/graph_dfs.cpp b/codes/cpp/chapter_graph/graph_dfs.cpp index 71ab4f21..d3281124 100644 --- a/codes/cpp/chapter_graph/graph_dfs.cpp +++ b/codes/cpp/chapter_graph/graph_dfs.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" #include "./graph_adjacency_list.cpp" /* 深度优先遍历 DFS 辅助函数 */ diff --git a/codes/cpp/chapter_hashing/array_hash_map.cpp b/codes/cpp/chapter_hashing/array_hash_map.cpp index 5f78191e..b52db173 100644 --- a/codes/cpp/chapter_hashing/array_hash_map.cpp +++ b/codes/cpp/chapter_hashing/array_hash_map.cpp @@ -4,7 +4,7 @@ * Author: msk397 (machangxinq@gmail.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 键值对 int->String */ struct Entry { diff --git a/codes/cpp/chapter_hashing/hash_map.cpp b/codes/cpp/chapter_hashing/hash_map.cpp index 4a4e4270..1f295ec7 100644 --- a/codes/cpp/chapter_hashing/hash_map.cpp +++ b/codes/cpp/chapter_hashing/hash_map.cpp @@ -4,7 +4,7 @@ * Author: msk397 (machangxinq@gmail.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* Driver Code */ int main() { diff --git a/codes/cpp/chapter_heap/heap.cpp b/codes/cpp/chapter_heap/heap.cpp index 558269d5..d7fa44f5 100644 --- a/codes/cpp/chapter_heap/heap.cpp +++ b/codes/cpp/chapter_heap/heap.cpp @@ -4,7 +4,7 @@ * Author: LoneRanger(836253168@qq.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" void testPush(priority_queue &heap, int val) { heap.push(val); // 元素入堆 diff --git a/codes/cpp/chapter_heap/my_heap.cpp b/codes/cpp/chapter_heap/my_heap.cpp index 272c5d24..526d0050 100644 --- a/codes/cpp/chapter_heap/my_heap.cpp +++ b/codes/cpp/chapter_heap/my_heap.cpp @@ -4,7 +4,7 @@ * Author: LoneRanger (836253168@qq.com), what-is-me (whatisme@outlook.jp) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 大顶堆 */ class MaxHeap { diff --git a/codes/cpp/chapter_searching/hashing_search.cpp b/codes/cpp/chapter_searching/hashing_search.cpp index 7373f51c..606c0a53 100644 --- a/codes/cpp/chapter_searching/hashing_search.cpp +++ b/codes/cpp/chapter_searching/hashing_search.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 哈希查找(数组) */ int hashingSearchArray(unordered_map map, int target) { diff --git a/codes/cpp/chapter_searching/leetcode_two_sum.cpp b/codes/cpp/chapter_searching/leetcode_two_sum.cpp index 38b76f77..ecbce4b8 100644 --- a/codes/cpp/chapter_searching/leetcode_two_sum.cpp +++ b/codes/cpp/chapter_searching/leetcode_two_sum.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 方法一:暴力枚举 */ vector twoSumBruteForce(vector &nums, int target) { diff --git a/codes/cpp/chapter_searching/linear_search.cpp b/codes/cpp/chapter_searching/linear_search.cpp index d0680a0b..72f232c5 100644 --- a/codes/cpp/chapter_searching/linear_search.cpp +++ b/codes/cpp/chapter_searching/linear_search.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 线性查找(数组) */ int linearSearchArray(vector &nums, int target) { diff --git a/codes/cpp/chapter_sorting/bubble_sort.cpp b/codes/cpp/chapter_sorting/bubble_sort.cpp index ca839930..9e268085 100644 --- a/codes/cpp/chapter_sorting/bubble_sort.cpp +++ b/codes/cpp/chapter_sorting/bubble_sort.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 冒泡排序 */ void bubbleSort(vector &nums) { diff --git a/codes/cpp/chapter_sorting/bucket_sort.cpp b/codes/cpp/chapter_sorting/bucket_sort.cpp index 4eb1212d..8e5cb472 100644 --- a/codes/cpp/chapter_sorting/bucket_sort.cpp +++ b/codes/cpp/chapter_sorting/bucket_sort.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 桶排序 */ void bucketSort(vector &nums) { diff --git a/codes/cpp/chapter_sorting/counting_sort.cpp b/codes/cpp/chapter_sorting/counting_sort.cpp index e56f503e..d01ded6b 100644 --- a/codes/cpp/chapter_sorting/counting_sort.cpp +++ b/codes/cpp/chapter_sorting/counting_sort.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 计数排序 */ // 简单实现,无法用于排序对象 diff --git a/codes/cpp/chapter_sorting/insertion_sort.cpp b/codes/cpp/chapter_sorting/insertion_sort.cpp index 5444716e..1d37acb8 100644 --- a/codes/cpp/chapter_sorting/insertion_sort.cpp +++ b/codes/cpp/chapter_sorting/insertion_sort.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 插入排序 */ void insertionSort(vector &nums) { diff --git a/codes/cpp/chapter_sorting/merge_sort.cpp b/codes/cpp/chapter_sorting/merge_sort.cpp index 3e75507c..fefb625d 100644 --- a/codes/cpp/chapter_sorting/merge_sort.cpp +++ b/codes/cpp/chapter_sorting/merge_sort.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 合并左子数组和右子数组 */ // 左子数组区间 [left, mid] diff --git a/codes/cpp/chapter_sorting/quick_sort.cpp b/codes/cpp/chapter_sorting/quick_sort.cpp index 3c604f49..327600f0 100644 --- a/codes/cpp/chapter_sorting/quick_sort.cpp +++ b/codes/cpp/chapter_sorting/quick_sort.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 快速排序类 */ class QuickSort { diff --git a/codes/cpp/chapter_sorting/radix_sort.cpp b/codes/cpp/chapter_sorting/radix_sort.cpp index b687bc9d..0b52cc4e 100644 --- a/codes/cpp/chapter_sorting/radix_sort.cpp +++ b/codes/cpp/chapter_sorting/radix_sort.cpp @@ -5,7 +5,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 获取元素 num 的第 k 位,其中 exp = 10^(k-1) */ int digit(int num, int exp) { diff --git a/codes/cpp/chapter_stack_and_queue/array_deque.cpp b/codes/cpp/chapter_stack_and_queue/array_deque.cpp index dd7924a2..248e13a3 100644 --- a/codes/cpp/chapter_stack_and_queue/array_deque.cpp +++ b/codes/cpp/chapter_stack_and_queue/array_deque.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 基于环形数组实现的双向队列 */ class ArrayDeque { diff --git a/codes/cpp/chapter_stack_and_queue/array_queue.cpp b/codes/cpp/chapter_stack_and_queue/array_queue.cpp index 80be294a..ea83bf77 100644 --- a/codes/cpp/chapter_stack_and_queue/array_queue.cpp +++ b/codes/cpp/chapter_stack_and_queue/array_queue.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 基于环形数组实现的队列 */ class ArrayQueue { diff --git a/codes/cpp/chapter_stack_and_queue/array_stack.cpp b/codes/cpp/chapter_stack_and_queue/array_stack.cpp index ff926a05..02df352c 100644 --- a/codes/cpp/chapter_stack_and_queue/array_stack.cpp +++ b/codes/cpp/chapter_stack_and_queue/array_stack.cpp @@ -4,7 +4,7 @@ * Author: qualifier1024 (2539244001@qq.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 基于数组实现的栈 */ class ArrayStack { diff --git a/codes/cpp/chapter_stack_and_queue/deque.cpp b/codes/cpp/chapter_stack_and_queue/deque.cpp index 01473903..080c6028 100644 --- a/codes/cpp/chapter_stack_and_queue/deque.cpp +++ b/codes/cpp/chapter_stack_and_queue/deque.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* Driver Code */ int main() { diff --git a/codes/cpp/chapter_stack_and_queue/linkedlist_deque.cpp b/codes/cpp/chapter_stack_and_queue/linkedlist_deque.cpp index 7f4a40b2..d1217a13 100644 --- a/codes/cpp/chapter_stack_and_queue/linkedlist_deque.cpp +++ b/codes/cpp/chapter_stack_and_queue/linkedlist_deque.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 双向链表节点 */ struct DoublyListNode { diff --git a/codes/cpp/chapter_stack_and_queue/linkedlist_queue.cpp b/codes/cpp/chapter_stack_and_queue/linkedlist_queue.cpp index 80a307c4..400072d3 100644 --- a/codes/cpp/chapter_stack_and_queue/linkedlist_queue.cpp +++ b/codes/cpp/chapter_stack_and_queue/linkedlist_queue.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 基于链表实现的队列 */ class LinkedListQueue { diff --git a/codes/cpp/chapter_stack_and_queue/linkedlist_stack.cpp b/codes/cpp/chapter_stack_and_queue/linkedlist_stack.cpp index 543ad6d3..1ec5bee4 100644 --- a/codes/cpp/chapter_stack_and_queue/linkedlist_stack.cpp +++ b/codes/cpp/chapter_stack_and_queue/linkedlist_stack.cpp @@ -4,7 +4,7 @@ * Author: qualifier1024 (2539244001@qq.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 基于链表实现的栈 */ class LinkedListStack { diff --git a/codes/cpp/chapter_stack_and_queue/queue.cpp b/codes/cpp/chapter_stack_and_queue/queue.cpp index 140fad06..b94ba40d 100644 --- a/codes/cpp/chapter_stack_and_queue/queue.cpp +++ b/codes/cpp/chapter_stack_and_queue/queue.cpp @@ -4,7 +4,7 @@ * Author: qualifier1024 (2539244001@qq.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* Driver Code */ int main() { diff --git a/codes/cpp/chapter_stack_and_queue/stack.cpp b/codes/cpp/chapter_stack_and_queue/stack.cpp index c3d82013..18743bfb 100644 --- a/codes/cpp/chapter_stack_and_queue/stack.cpp +++ b/codes/cpp/chapter_stack_and_queue/stack.cpp @@ -4,7 +4,7 @@ * Author: qualifier1024 (2539244001@qq.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* Driver Code */ int main() { diff --git a/codes/cpp/chapter_tree/avl_tree.cpp b/codes/cpp/chapter_tree/avl_tree.cpp index 82e01d44..5aaca253 100644 --- a/codes/cpp/chapter_tree/avl_tree.cpp +++ b/codes/cpp/chapter_tree/avl_tree.cpp @@ -4,7 +4,7 @@ * Author: what-is-me (whatisme@outlook.jp) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* AVL 树 */ class AVLTree { diff --git a/codes/cpp/chapter_tree/binary_search_tree.cpp b/codes/cpp/chapter_tree/binary_search_tree.cpp index 022afeca..8b8e83bf 100644 --- a/codes/cpp/chapter_tree/binary_search_tree.cpp +++ b/codes/cpp/chapter_tree/binary_search_tree.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 二叉搜索树 */ class BinarySearchTree { diff --git a/codes/cpp/chapter_tree/binary_tree.cpp b/codes/cpp/chapter_tree/binary_tree.cpp index 3d7075de..55d1ef77 100644 --- a/codes/cpp/chapter_tree/binary_tree.cpp +++ b/codes/cpp/chapter_tree/binary_tree.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* Driver Code */ int main() { diff --git a/codes/cpp/chapter_tree/binary_tree_bfs.cpp b/codes/cpp/chapter_tree/binary_tree_bfs.cpp index abc7846d..dad36643 100644 --- a/codes/cpp/chapter_tree/binary_tree_bfs.cpp +++ b/codes/cpp/chapter_tree/binary_tree_bfs.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" /* 层序遍历 */ vector levelOrder(TreeNode *root) { diff --git a/codes/cpp/chapter_tree/binary_tree_dfs.cpp b/codes/cpp/chapter_tree/binary_tree_dfs.cpp index 2ccae4db..a756d33e 100644 --- a/codes/cpp/chapter_tree/binary_tree_dfs.cpp +++ b/codes/cpp/chapter_tree/binary_tree_dfs.cpp @@ -4,7 +4,7 @@ * Author: Krahets (krahets@163.com) */ -#include "../include/include.hpp" +#include "../utils/common.hpp" // 初始化列表,用于存储遍历序列 vector vec; diff --git a/codes/cpp/include/CMakeLists.txt b/codes/cpp/include/CMakeLists.txt deleted file mode 100644 index c9bc76ab..00000000 --- a/codes/cpp/include/CMakeLists.txt +++ /dev/null @@ -1,4 +0,0 @@ -add_executable(include - include.hpp PrintUtil.hpp - ListNode.hpp TreeNode.hpp - Vertex.hpp) \ No newline at end of file diff --git a/codes/cpp/utils/CMakeLists.txt b/codes/cpp/utils/CMakeLists.txt new file mode 100644 index 00000000..775a5586 --- /dev/null +++ b/codes/cpp/utils/CMakeLists.txt @@ -0,0 +1,4 @@ +add_executable(utils + common.hpp print_utils.hpp + list_node.hpp tree_node.hpp + vertex.hpp) \ No newline at end of file diff --git a/codes/cpp/include/include.hpp b/codes/cpp/utils/common.hpp similarity index 74% rename from codes/cpp/include/include.hpp rename to codes/cpp/utils/common.hpp index d0b925dc..1f557d43 100644 --- a/codes/cpp/include/include.hpp +++ b/codes/cpp/utils/common.hpp @@ -1,5 +1,5 @@ /** - * File: PrintUtil.hpp + * File: common.hpp * Created Time: 2021-12-19 * Author: Krahets (krahets@163.com) */ @@ -20,9 +20,9 @@ #include #include -#include "ListNode.hpp" -#include "PrintUtil.hpp" -#include "TreeNode.hpp" -#include "Vertex.hpp" +#include "list_node.hpp" +#include "print_utils.hpp" +#include "tree_node.hpp" +#include "vertex.hpp" using namespace std; diff --git a/codes/cpp/include/ListNode.hpp b/codes/cpp/utils/list_node.hpp similarity index 97% rename from codes/cpp/include/ListNode.hpp rename to codes/cpp/utils/list_node.hpp index 583ad01a..0e2d9497 100644 --- a/codes/cpp/include/ListNode.hpp +++ b/codes/cpp/utils/list_node.hpp @@ -1,5 +1,5 @@ /** - * File: PrintUtil.hpp + * File: list_node.hpp * Created Time: 2021-12-19 * Author: Krahets (krahets@163.com) */ diff --git a/codes/cpp/include/PrintUtil.hpp b/codes/cpp/utils/print_utils.hpp similarity index 98% rename from codes/cpp/include/PrintUtil.hpp rename to codes/cpp/utils/print_utils.hpp index 840043e6..2edba56b 100644 --- a/codes/cpp/include/PrintUtil.hpp +++ b/codes/cpp/utils/print_utils.hpp @@ -1,13 +1,13 @@ /** - * File: PrintUtil.hpp + * File: print_utils.hpp * Created Time: 2021-12-19 * Author: Krahets (krahets@163.com), msk397 (machangxinq@gmail.com), LoneRanger(836253168@qq.com) */ #pragma once -#include "ListNode.hpp" -#include "TreeNode.hpp" +#include "list_node.hpp" +#include "tree_node.hpp" #include #include #include diff --git a/codes/cpp/include/TreeNode.hpp b/codes/cpp/utils/tree_node.hpp similarity index 98% rename from codes/cpp/include/TreeNode.hpp rename to codes/cpp/utils/tree_node.hpp index 3d446015..827ab9fd 100644 --- a/codes/cpp/include/TreeNode.hpp +++ b/codes/cpp/utils/tree_node.hpp @@ -1,5 +1,5 @@ /** - * File: PrintUtil.hpp + * File: tree_node.hpp * Created Time: 2021-12-19 * Author: Krahets (krahets@163.com) */ diff --git a/codes/cpp/include/Vertex.hpp b/codes/cpp/utils/vertex.hpp similarity index 96% rename from codes/cpp/include/Vertex.hpp rename to codes/cpp/utils/vertex.hpp index b043d015..447ffc26 100644 --- a/codes/cpp/include/Vertex.hpp +++ b/codes/cpp/utils/vertex.hpp @@ -1,5 +1,5 @@ /** - * File: PrintUtil.hpp + * File: vertex.hpp * Created Time: 2023-03-02 * Author: Krahets (krahets@163.com) */ diff --git a/codes/csharp/include/Vertex.cs b/codes/csharp/include/Vertex.cs index 19b89e8d..45085817 100644 --- a/codes/csharp/include/Vertex.cs +++ b/codes/csharp/include/Vertex.cs @@ -1,5 +1,5 @@ /** - * File: graph_adjacency_list.cs + * File: Vertex.cs * Created Time: 2023-02-06 * Author: zjkung1123 (zjkung1123@gmail.com), krahets (krahets@163.com) */ diff --git a/codes/dart/utils/list_node.dart b/codes/dart/utils/list_node.dart index fefd542c..163f9179 100644 --- a/codes/dart/utils/list_node.dart +++ b/codes/dart/utils/list_node.dart @@ -1,5 +1,5 @@ /** - * File: ListNode + * File: list_node.dart * Created Time: 2023-01-23 * Author: Jefferson (JeffersonHuang77@gmail.com) */ diff --git a/codes/dart/utils/print_util.dart b/codes/dart/utils/print_util.dart index 5d56b096..82ac38b0 100644 --- a/codes/dart/utils/print_util.dart +++ b/codes/dart/utils/print_util.dart @@ -1,5 +1,5 @@ /** - * File: PrintUtil + * File: print_util.dart * Created Time: 2023-01-23 * Author: Jefferson (JeffersonHuang77@gmail.com) */ diff --git a/codes/java/chapter_array_and_linkedlist/linked_list.java b/codes/java/chapter_array_and_linkedlist/linked_list.java index 8ec57e28..d88411f0 100644 --- a/codes/java/chapter_array_and_linkedlist/linked_list.java +++ b/codes/java/chapter_array_and_linkedlist/linked_list.java @@ -6,7 +6,7 @@ package chapter_array_and_linkedlist; -import include.*; +import utils.*; public class linked_list { /* 在链表的节点 n0 之后插入节点 P */ diff --git a/codes/java/chapter_backtracking/preorder_traversal_i_compact.java b/codes/java/chapter_backtracking/preorder_traversal_i_compact.java index 38b6ac7e..d36c0b76 100644 --- a/codes/java/chapter_backtracking/preorder_traversal_i_compact.java +++ b/codes/java/chapter_backtracking/preorder_traversal_i_compact.java @@ -6,7 +6,7 @@ package chapter_backtracking; -import include.*; +import utils.*; import java.util.*; public class preorder_traversal_i_compact { diff --git a/codes/java/chapter_backtracking/preorder_traversal_ii_compact.java b/codes/java/chapter_backtracking/preorder_traversal_ii_compact.java index 3622bf69..a412aefc 100644 --- a/codes/java/chapter_backtracking/preorder_traversal_ii_compact.java +++ b/codes/java/chapter_backtracking/preorder_traversal_ii_compact.java @@ -6,7 +6,7 @@ package chapter_backtracking; -import include.*; +import utils.*; import java.util.*; public class preorder_traversal_ii_compact { diff --git a/codes/java/chapter_backtracking/preorder_traversal_iii_compact.java b/codes/java/chapter_backtracking/preorder_traversal_iii_compact.java index 32555152..4ffbb621 100644 --- a/codes/java/chapter_backtracking/preorder_traversal_iii_compact.java +++ b/codes/java/chapter_backtracking/preorder_traversal_iii_compact.java @@ -6,7 +6,7 @@ package chapter_backtracking; -import include.*; +import utils.*; import java.util.*; public class preorder_traversal_iii_compact { diff --git a/codes/java/chapter_backtracking/preorder_traversal_iii_template.java b/codes/java/chapter_backtracking/preorder_traversal_iii_template.java index 998050f4..27685a1e 100644 --- a/codes/java/chapter_backtracking/preorder_traversal_iii_template.java +++ b/codes/java/chapter_backtracking/preorder_traversal_iii_template.java @@ -6,7 +6,7 @@ package chapter_backtracking; -import include.*; +import utils.*; import java.util.*; public class preorder_traversal_iii_template { diff --git a/codes/java/chapter_computational_complexity/space_complexity.java b/codes/java/chapter_computational_complexity/space_complexity.java index 0ccf7711..e7c0872f 100644 --- a/codes/java/chapter_computational_complexity/space_complexity.java +++ b/codes/java/chapter_computational_complexity/space_complexity.java @@ -6,7 +6,7 @@ package chapter_computational_complexity; -import include.*; +import utils.*; import java.util.*; public class space_complexity { diff --git a/codes/java/chapter_graph/graph_adjacency_list.java b/codes/java/chapter_graph/graph_adjacency_list.java index a9afd70b..28e1d8f9 100644 --- a/codes/java/chapter_graph/graph_adjacency_list.java +++ b/codes/java/chapter_graph/graph_adjacency_list.java @@ -7,7 +7,7 @@ package chapter_graph; import java.util.*; -import include.*; +import utils.*; /* 基于邻接表实现的无向图类 */ class GraphAdjList { diff --git a/codes/java/chapter_graph/graph_adjacency_matrix.java b/codes/java/chapter_graph/graph_adjacency_matrix.java index 071574ca..1a9b03f9 100644 --- a/codes/java/chapter_graph/graph_adjacency_matrix.java +++ b/codes/java/chapter_graph/graph_adjacency_matrix.java @@ -6,7 +6,7 @@ package chapter_graph; -import include.*; +import utils.*; import java.util.*; /* 基于邻接矩阵实现的无向图类 */ diff --git a/codes/java/chapter_graph/graph_bfs.java b/codes/java/chapter_graph/graph_bfs.java index bc58ae12..ffcf6d0d 100644 --- a/codes/java/chapter_graph/graph_bfs.java +++ b/codes/java/chapter_graph/graph_bfs.java @@ -7,7 +7,7 @@ package chapter_graph; import java.util.*; -import include.*; +import utils.*; public class graph_bfs { /* 广度优先遍历 BFS */ diff --git a/codes/java/chapter_graph/graph_dfs.java b/codes/java/chapter_graph/graph_dfs.java index 8182fbe7..035b3fbe 100644 --- a/codes/java/chapter_graph/graph_dfs.java +++ b/codes/java/chapter_graph/graph_dfs.java @@ -7,7 +7,7 @@ package chapter_graph; import java.util.*; -import include.*; +import utils.*; public class graph_dfs { /* 深度优先遍历 DFS 辅助函数 */ diff --git a/codes/java/chapter_hashing/hash_map.java b/codes/java/chapter_hashing/hash_map.java index 0dd400b3..469cf5a5 100644 --- a/codes/java/chapter_hashing/hash_map.java +++ b/codes/java/chapter_hashing/hash_map.java @@ -7,7 +7,7 @@ package chapter_hashing; import java.util.*; -import include.*; +import utils.*; public class hash_map { public static void main(String[] args) { diff --git a/codes/java/chapter_heap/heap.java b/codes/java/chapter_heap/heap.java index 13b7ab64..86679d82 100644 --- a/codes/java/chapter_heap/heap.java +++ b/codes/java/chapter_heap/heap.java @@ -6,7 +6,7 @@ package chapter_heap; -import include.*; +import utils.*; import java.util.*; public class heap { diff --git a/codes/java/chapter_heap/my_heap.java b/codes/java/chapter_heap/my_heap.java index 03ff3c32..f136dbb8 100644 --- a/codes/java/chapter_heap/my_heap.java +++ b/codes/java/chapter_heap/my_heap.java @@ -6,7 +6,7 @@ package chapter_heap; -import include.*; +import utils.*; import java.util.*; /* 大顶堆 */ diff --git a/codes/java/chapter_searching/hashing_search.java b/codes/java/chapter_searching/hashing_search.java index 0ba50db1..9e5a479f 100644 --- a/codes/java/chapter_searching/hashing_search.java +++ b/codes/java/chapter_searching/hashing_search.java @@ -6,7 +6,7 @@ package chapter_searching; -import include.*; +import utils.*; import java.util.*; public class hashing_search { diff --git a/codes/java/chapter_searching/linear_search.java b/codes/java/chapter_searching/linear_search.java index 1a4ffa62..4dd93eb1 100644 --- a/codes/java/chapter_searching/linear_search.java +++ b/codes/java/chapter_searching/linear_search.java @@ -6,7 +6,7 @@ package chapter_searching; -import include.*; +import utils.*; public class linear_search { /* 线性查找(数组) */ diff --git a/codes/java/chapter_stack_and_queue/linkedlist_stack.java b/codes/java/chapter_stack_and_queue/linkedlist_stack.java index 0e0ec73c..b214596b 100644 --- a/codes/java/chapter_stack_and_queue/linkedlist_stack.java +++ b/codes/java/chapter_stack_and_queue/linkedlist_stack.java @@ -7,7 +7,7 @@ package chapter_stack_and_queue; import java.util.*; -import include.*; +import utils.*; /* 基于链表实现的栈 */ class LinkedListStack { diff --git a/codes/java/chapter_tree/avl_tree.java b/codes/java/chapter_tree/avl_tree.java index aea19fa5..967483fb 100644 --- a/codes/java/chapter_tree/avl_tree.java +++ b/codes/java/chapter_tree/avl_tree.java @@ -6,7 +6,7 @@ package chapter_tree; -import include.*; +import utils.*; /* AVL 树 */ class AVLTree { diff --git a/codes/java/chapter_tree/binary_search_tree.java b/codes/java/chapter_tree/binary_search_tree.java index 1806c0ca..05654229 100644 --- a/codes/java/chapter_tree/binary_search_tree.java +++ b/codes/java/chapter_tree/binary_search_tree.java @@ -7,7 +7,7 @@ package chapter_tree; import java.util.*; -import include.*; +import utils.*; /* 二叉搜索树 */ class BinarySearchTree { diff --git a/codes/java/chapter_tree/binary_tree.java b/codes/java/chapter_tree/binary_tree.java index d71e1f8d..1f4d2c35 100644 --- a/codes/java/chapter_tree/binary_tree.java +++ b/codes/java/chapter_tree/binary_tree.java @@ -6,7 +6,7 @@ package chapter_tree; -import include.*; +import utils.*; public class binary_tree { public static void main(String[] args) { diff --git a/codes/java/chapter_tree/binary_tree_bfs.java b/codes/java/chapter_tree/binary_tree_bfs.java index 2fb060ad..cdf57ac6 100644 --- a/codes/java/chapter_tree/binary_tree_bfs.java +++ b/codes/java/chapter_tree/binary_tree_bfs.java @@ -6,7 +6,7 @@ package chapter_tree; -import include.*; +import utils.*; import java.util.*; public class binary_tree_bfs { diff --git a/codes/java/chapter_tree/binary_tree_dfs.java b/codes/java/chapter_tree/binary_tree_dfs.java index e04c691c..b11c64a7 100644 --- a/codes/java/chapter_tree/binary_tree_dfs.java +++ b/codes/java/chapter_tree/binary_tree_dfs.java @@ -6,7 +6,7 @@ package chapter_tree; -import include.*; +import utils.*; import java.util.*; public class binary_tree_dfs { diff --git a/codes/java/include/ListNode.java b/codes/java/include/ListNode.java deleted file mode 100755 index ee65d0ed..00000000 --- a/codes/java/include/ListNode.java +++ /dev/null @@ -1,36 +0,0 @@ -/** - * File: ListNode.java - * Created Time: 2022-11-25 - * Author: Krahets (krahets@163.com) - */ - -package include; - -/* Definition for a singly-linked list node */ -public class ListNode { - public int val; - public ListNode next; - - public ListNode(int x) { - val = x; - } - - /* Generate a linked list with an array */ - public static ListNode arrToLinkedList(int[] arr) { - ListNode dum = new ListNode(0); - ListNode head = dum; - for (int val : arr) { - head.next = new ListNode(val); - head = head.next; - } - return dum.next; - } - - /* Get a list node with specific value from a linked list */ - public static ListNode getListNode(ListNode head, int val) { - while (head != null && head.val != val) { - head = head.next; - } - return head; - } -} diff --git a/codes/java/include/PrintUtil.java b/codes/java/include/PrintUtil.java deleted file mode 100755 index 8dd576e7..00000000 --- a/codes/java/include/PrintUtil.java +++ /dev/null @@ -1,118 +0,0 @@ -/** - * File: PrintUtil.java - * Created Time: 2022-11-25 - * Author: Krahets (krahets@163.com) - */ - -package include; - -import java.util.*; - -class Trunk { - Trunk prev; - String str; - - Trunk(Trunk prev, String str) { - this.prev = prev; - this.str = str; - } -}; - -public class PrintUtil { - - /* Print a matrix (Array) */ - public static void printMatrix(T[][] matrix) { - System.out.println("["); - for (T[] row : matrix) { - System.out.println(" " + row + ","); - } - System.out.println("]"); - } - - /* Print a matrix (List) */ - public static void printMatrix(List> matrix) { - System.out.println("["); - for (List row : matrix) { - System.out.println(" " + row + ","); - } - System.out.println("]"); - } - - /* Print a linked list */ - public static void printLinkedList(ListNode head) { - List list = new ArrayList<>(); - while (head != null) { - list.add(String.valueOf(head.val)); - head = head.next; - } - System.out.println(String.join(" -> ", list)); - } - - /** - * The interface of the tree printer - * This tree printer is borrowed from TECHIE DELIGHT - * https://www.techiedelight.com/c-program-print-binary-tree/ - */ - public static void printTree(TreeNode root) { - printTree(root, null, false); - } - - /* Print a binary tree */ - public static void printTree(TreeNode root, Trunk prev, boolean isLeft) { - if (root == null) { - return; - } - - String prev_str = " "; - Trunk trunk = new Trunk(prev, prev_str); - - printTree(root.right, trunk, true); - - if (prev == null) { - trunk.str = "———"; - } else if (isLeft) { - trunk.str = "/———"; - prev_str = " |"; - } else { - trunk.str = "\\———"; - prev.str = prev_str; - } - - showTrunks(trunk); - System.out.println(" " + root.val); - - if (prev != null) { - prev.str = prev_str; - } - trunk.str = " |"; - - printTree(root.left, trunk, false); - } - - /* Helper function to print branches of the binary tree */ - public static void showTrunks(Trunk p) { - if (p == null) { - return; - } - - showTrunks(p.prev); - System.out.print(p.str); - } - - /* Print a hash map */ - public static void printHashMap(Map map) { - for (Map.Entry kv : map.entrySet()) { - System.out.println(kv.getKey() + " -> " + kv.getValue()); - } - } - - /* Print a heap (PriorityQueue) */ - public static void printHeap(Queue queue) { - List list = new ArrayList<>(queue); - System.out.print("堆的数组表示:"); - System.out.println(list); - System.out.println("堆的树状表示:"); - TreeNode root = TreeNode.listToTree(list); - printTree(root); - } -} diff --git a/codes/java/include/TreeNode.java b/codes/java/include/TreeNode.java deleted file mode 100644 index de583ff1..00000000 --- a/codes/java/include/TreeNode.java +++ /dev/null @@ -1,67 +0,0 @@ -/** - * File: TreeNode.java - * Created Time: 2022-11-25 - * Author: Krahets (krahets@163.com) - */ - -package include; - -import java.util.*; - -/* Definition for a binary tree node. */ -public class TreeNode { - public int val; // 节点值 - public int height; // 节点高度 - public TreeNode left; // 左子节点引用 - public TreeNode right; // 右子节点引用 - - public TreeNode(int x) { - val = x; - } - - /* Generate a binary tree given an array */ - public static TreeNode listToTree(List list) { - int size = list.size(); - if (size == 0) - return null; - - TreeNode root = new TreeNode(list.get(0)); - Queue queue = new LinkedList<>() {{ add(root); }}; - int i = 0; - while (!queue.isEmpty()) { - TreeNode node = queue.poll(); - if (++i >= size) - break; - if (list.get(i) != null) { - node.left = new TreeNode(list.get(i)); - queue.add(node.left); - } - if (++i >= size) - break; - if (list.get(i) != null) { - node.right = new TreeNode(list.get(i)); - queue.add(node.right); - } - } - return root; - } - - /* Serialize a binary tree to a list */ - public static List treeToList(TreeNode root) { - List list = new ArrayList<>(); - if (root == null) - return list; - Queue queue = new LinkedList<>() {{ add(root); }}; - while (!queue.isEmpty()) { - TreeNode node = queue.poll(); - if (node != null) { - list.add(node.val); - queue.add(node.left); - queue.add(node.right); - } else { - list.add(null); - } - } - return list; - } -} diff --git a/codes/java/include/Vertex.java b/codes/java/include/Vertex.java deleted file mode 100644 index 5696a2fe..00000000 --- a/codes/java/include/Vertex.java +++ /dev/null @@ -1,36 +0,0 @@ -/** - * File: Vertex.java - * Created Time: 2023-02-15 - * Author: Krahets (krahets@163.com) - */ - -package include; - -import java.util.*; - -/* 顶点类 */ -public class Vertex { - public int val; - - public Vertex(int val) { - this.val = val; - } - - /* 输入值列表 vals ,返回顶点列表 vets */ - public static Vertex[] valsToVets(int[] vals) { - Vertex[] vets = new Vertex[vals.length]; - for (int i = 0; i < vals.length; i++) { - vets[i] = new Vertex(vals[i]); - } - return vets; - } - - /* 输入顶点列表 vets ,返回值列表 vals */ - public static List vetsToVals(List vets) { - List vals = new ArrayList<>(); - for (Vertex vet : vets) { - vals.add(vet.val); - } - return vals; - } -} diff --git a/docs/chapter_backtracking/permutations_problem.md b/docs/chapter_backtracking/permutations_problem.md index 0edfde64..c09ce980 100644 --- a/docs/chapter_backtracking/permutations_problem.md +++ b/docs/chapter_backtracking/permutations_problem.md @@ -2,7 +2,7 @@ 全排列问题是回溯算法的一个典型应用。它的定义是在给定一个集合(如一个数组或字符串)的情况下,找出这个集合中元素的所有可能的排列。 -如下表所示,展示了输入数组和对应的所有排列。 +如下表所示,列举了几个示例数组和其对应的所有排列。