Commit graph

411 commits

Author SHA1 Message Date
Revone f87e682f26 [test] test coverage enriched to 90.37% 2023-10-29 21:52:27 +08:00
Revone c492af0461 [linked-list] Standardize the method names of DoublyLinkedList and SinglyLinkedList. 2023-10-29 16:43:19 +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 c11cc4527b [graph] The removal method in the graph data structure is standardized to 'delete' 2023-10-28 15:58:48 +08:00
Revone f8e0607b25 [trie] The Trie's getWords method now offers an optional parameter to retrieve all words in case of an empty string input. 2023-10-28 15:50:42 +08:00
Revone f90afe0b57 [binary-tree] The binary tree's BFS and level-order traversal results should be the same. However, for convenience, we provide an additional method called listLevels to display traversal results in levels. 2023-10-27 22:30:52 +08:00
Revone edad774263 [project] IDE formated 2023-10-27 18:07:40 +08:00
Revone 06dc8bdc4d [binary-tree] Change the design so that when instantiating the BinaryTree data structure, there's no need to specify the node type; instead, use the second default generic parameter and its default value. 2023-10-27 18:04:31 +08:00
Revone af23af911a [binary-tree] renamed _loopType to _iterationType 2023-10-27 17:17:27 +08:00
Revone f2d3be7574 [binary-tree] Translate the return value type inference for methods that take a callback function as a parameter. 2023-10-26 20:26:06 +08:00
Revone 31c228668e [optimization] allow all list datatype delete methods to accept null as an input argument 2023-10-26 16:45:08 +08:00
Revone 2d518151ae [pkg] v1.38.3 publish 2023-10-25 21:11:44 +08:00
Revone 23cbdbabca [binary-tree] bfs simplified 2023-10-25 21:11:11 +08:00
Revone 8df45c5c52 [binary-tree] Dynamically infer traversal method return values based on callback function results. 2023-10-25 21:09:11 +08:00
Revone e45854d3f4 [project] Optimize the build configuration to be compatible with both earlier and later versions of Node.js. Switch to using tsup for UMD module output. Format code using an IDE. 2023-10-25 15:51:50 +08:00
Revone b7dd86dad2 [project] remove unnecessary self dependency 2023-10-25 11:26:30 +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 5978159d9e [project] ready to publish all subs customized 2023-10-25 10:40:39 +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 74d4294320 [binary-tree] Provide comprehensive JSDoc comments for the enhanced APIs. 2023-10-24 09:25:33 +08:00
zrwusa 44c29d89fc
Merge pull request #23 from zrwusa/optimization
Optimization
2023-10-24 00:06:23 +08:00
Revone 6c9578368c [binary-tree] Add an 'iterationType' parameter to all methods compatible with both recursion and iteration, allowing for specifying a particular iteration method in each method. 2023-10-24 00:03:48 +08:00
Revone 3983ab089c [binary-tree] Each method that traverses based on the root node can specify any node within the tree as the root node. 2023-10-23 22:36:49 +08:00
Revone 48e94f29ed [binary-tree] Update the testing API to the new version. 2023-10-23 21:22:07 +08:00
Revone c177a4f87d [pkg] v1.37.1 publishing 2023-10-23 03:06:55 +08:00
zrwusa 8e2d3f9c57
Merge pull request #20 from zrwusa/optimization
Optimization
2023-10-23 03:04:19 +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 af7372ba30 [pkg] ready to publish v1.37.0 2023-10-22 00:00:22 +08:00
zrwusa f05793ee88
Merge pull request #18 from zrwusa/optimization
[binary-tree, graph] Replace all code that uses Arrays as makeshift Q…
2023-10-21 23:56:43 +08:00
Revone 3a86a5c37d [binary-tree, graph] Replace all code that uses Arrays as makeshift Queues with actual Queues to improve efficiency. [binary-tree] Remove most methods for calculating sums and modifying properties, adopting a generic callback-based design. [bst] Enable default batch addition in BST using sorted binary insertion to maintain tree balance as much as possible. 2023-10-21 23:56:14 +08:00
Revone 284e85e76b [pkg] v1.36.9 published 2023-10-21 20:19:35 +08:00
zrwusa 5825d3f83d
Merge pull request #17 from zrwusa/optimization
1. No need for dfsIterative; integrate it directly into the dfs metho…
2023-10-21 20:04:45 +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 cb56b04af5 [test] big o estimate refined 2023-10-21 14:46:41 +08:00
Revone 39baccd17c [pkg] v1.36.8 published 2023-10-21 02:02:13 +08:00
zrwusa ef05fdee75
Merge pull request #15 from zrwusa/heap
[heap] fibonacci heap implemented. [test] big O estimate. [project] n…
2023-10-21 02:00:33 +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 b7a7e36563 [project] added publish:all command 2023-10-20 11:51:26 +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 19221d698f [rbtree] almost there, RBTree has been implemented, but with bugs in deletion 2023-10-19 21:05:34 +08:00
Revone 9a90ae40fc [pkg] v1.36.6 published 2023-10-19 21:05:12 +08:00
Revone d2d9ac6e1c [project] CONTRIBUTING.md enriched 2023-10-19 09:53:49 +08:00
Revone 2953ec61af [git] Overwrite the rbtree branch based on the old version of the main branch 2023-10-19 09:42:24 +08:00
zrwusa cb47afea1e
Merge pull request #13 from zrwusa/rbtree
[rbtree] implemented, but with bugs
2023-10-19 09:29:16 +08:00
zrwusa a0c9c17345
Merge branch 'main' into rbtree 2023-10-19 09:29:01 +08:00
Revone ba9cd51a6a [project] enrich the scripts of ci 2023-10-19 09:21:00 +08:00
zrwusa b73141089f
Merge pull request #12 from zrwusa/trie
[trie] renamed ambiguous methods and add comments to all methods.
2023-10-18 18:55:40 +08:00
Revone 08afafe693 [trie] renamed ambiguous methods and add comments to all methods. 2023-10-18 18:54:33 +08:00
zrwusa f903804b0b
Merge pull request #11 from zrwusa/binarytree
[binarytree] modified the getDepth method to adhere to the proper def…
2023-10-18 18:29:31 +08:00