Commit graph

40 commits

Author SHA1 Message Date
Revone c82190764e [rbtree, binary-tree] Further testing of the Red-Black Tree is required. The 'get' method in BinaryTree should be renamed to 'getNode,' and an additional 'get' method should be added. 2023-11-01 13:48:01 +08:00
Revone 8712bbd3c9 [core] All data structures have had their member variables access control optimized. 2023-10-31 11:15:39 +08:00
Revone 1ec5a19172 [core] Besides Binary Trees and Graphs, access control optimizations have been applied to member variables. 2023-10-31 10:34:41 +08:00
Revone bf5b865e2c [binary-tree] bug fix#27 2023-10-30 11:14:41 +08:00
Revone f87e682f26 [test] test coverage enriched to 90.37% 2023-10-29 21:52:27 +08:00
Revone bd1720973a [test] Increase the test coverage to 89.51. 2023-10-28 23:54:27 +08:00
Revone 6c45f53f72 [heap, priority-queue, binary-indexed-tree] Heap and PriorityQueue constructors use a single object as a parameter for uniformity with the design of other data structures.
Binary Indexed Tree includes the getPrefixSum method.
2023-10-28 17:37:51 +08:00
Revone 063b702236 [project] Achieve a rational subpackage structure that enables individual subpackages to be independently exportable. 2023-10-25 11:19:03 +08:00
Revone c8f0e23704 [project] Ensure the type files in the "types" directory match those in the "src" directory. 2023-10-25 09:57:04 +08:00
Revone 0417ee5009 [binary-tree] Translate all traversal methods into callback function forms to enhance API convenience and readability. 2023-10-23 03:02:12 +08:00
Revone a6329163f7 1. No need for dfsIterative; integrate it directly into the dfs method. 2. Allow for public configuration of setLoopType. 3. Replace subTreeAdd with subTreeForeach for improved clarity and flexibility; provide a callback for enhanced versatility. 4. Standardize the naming of certain methods and parameters. 2023-10-21 20:03:54 +08:00
Revone 961e4e5f8c [heap] fibonacci heap implemented. [test] big O estimate. [project] no-unused-vars config to warn 2023-10-21 01:59:10 +08:00
Revone 4fa0816223 [core] Shared Comparator and DFSOrderPattern among multiple data structures. ESLint config improved 2023-10-20 11:43:26 +08:00
Revone 9764f2a5c6 [binary-tree, graph] In order to optimize the design of Binary Trees, unnecessary abstract classe removed, while enforcing method constraints between base classes and subclasses through interfaces. For Graph, it is necessary to use an abstract class as the base class, and interface constraints should be applied. Any data structures that are not within the scope of the plan deleted. 2023-10-17 21:06:41 +08:00
Revone 727cc87ca5 [BinaryTree, Heap] In abstract classes, only retain abstract methods. Replace the generic 'T' with 'E' in Heap and PriorityQueue 2023-10-16 20:34:22 +08:00
zrwusa fc7177130c
Merge branch 'main' into heap 2023-10-16 00:17:37 +08:00
Revone 219e41f32e [heap] test 2023-10-16 00:14:57 +08:00
Kirk Qi dd7b641273 [heap, priority queue] Heap improved. References #123: redesigned 2023-10-15 22:09:26 +08:00
Revone 14dae1c1cd test 2023-10-15 22:04:33 +08:00
Revone 0c5df67215 [readme] badages updated 2023-10-10 17:22:18 +08:00
Revone bd25485555 [project] generic naming standardized 2023-09-26 13:50:40 +08:00
Revone ea8f993a4a [prettier] bracket spacing false 2023-09-22 10:43:16 +08:00
Revone b263262a46 [project] github workflow added. eslint added. formating code by using prettier. 2023-09-21 12:52:17 +08:00
Revone 773c970667 Establish a unified code editor encoding standard by .editorconfig file. 2023-09-12 11:15:20 +08:00
Revone 450f051138 Optimize the overall codebase and directory structure. 2023-09-12 11:10:09 +08:00
Revone 6f86f71cdd Add sort method in heap.Ready to publish v1.20.0 2023-09-01 12:43:33 +08:00
Revone 2d1010b352 Rework the add, addMany, and fill methods of AbstractBinaryTree. Refactor the AddMany method of TreeMultiset. Fix the bug in TreeMultiset where all Node counts become 1 after calling the perfectBalance method. Remove the unnecessary configuration of autoIncrementId. 2023-08-31 20:02:31 +08:00
Revone bd71edc536 images removed, heap docs revised 2023-08-31 00:50:23 +08:00
Revone 60e5824524 The APIs of Heap and Priority Queue got optimized 2023-08-31 00:18:13 +08:00
Revone ea5f782577 rename the priority to priorityExtractor 2023-08-30 10:49:49 +08:00
Revone c1b5969c51 Support TypeScript v5.1.6. Standardize all getters and setters. Adjust access permissions for accessors, set access permissions for protected or private member variables, and indicate them using the private identifier "_". 2023-08-21 16:17:01 +08:00
Revone 694ca46893 bug fixed of method isValid for PriorityQueue and Heap, test cases enriched for PriorityQueue and Heap, SpecifyOptional type added 2023-08-18 22:39:45 +08:00
Revone 5db5561999 Heap test cases added 2023-08-18 13:40:08 +08:00
Revone 07231cd4c4 v1.15.2 published 2023-08-17 00:50:14 +08:00
Revone 2d07c5e5af update Typescript version to 4.9.5, DirectedGraph tests completed, Remedial measures have been taken in TypeScript versions 5.0 and above to enforce consistent access modifiers for getters and setters., annotation content has been enriched. 2023-08-16 22:44:38 +08:00
Revone 02bc7c4b8f add function names 2023-08-16 01:35:16 +08:00
Revone 4da59257e8 Name the addition method as "add" within the unified API 2023-08-14 20:39:10 +08:00
Revone c6e933acf0 All code annotations have been completed. 2023-08-12 11:35:25 +08:00
Revone 0770aeb2d1 version 0.9.16 published 2023-08-11 22:46:43 +08:00
Revone d57926602d first commit 2023-06-16 00:34:28 +08:00