Commit graph

247 commits

Author SHA1 Message Date
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
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
74d4294320 [binary-tree] Provide comprehensive JSDoc comments for the enhanced APIs. 2023-10-24 09:25:33 +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
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
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
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
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
2953ec61af [git] Overwrite the rbtree branch based on the old version of the main branch 2023-10-19 09:42:24 +08:00
zrwusa
a0c9c17345
Merge branch 'main' into rbtree 2023-10-19 09:29:01 +08:00
Revone
08afafe693 [trie] renamed ambiguous methods and add comments to all methods. 2023-10-18 18:54:33 +08:00
Revone
47fcfabae7 [binarytree] modified the getDepth method to adhere to the proper definition of "tree depth." 2023-10-18 18:28:36 +08:00
Revone
9cf303edd4 Merge branch 'main' into trie 2023-10-18 17:11:30 +08:00
Revone
56e1f05b59 [tree] tests passed 2023-10-18 17:10:31 +08:00
Revone
1627b633bd [trie] getHeight returns faulty height bug fixed. Variables renamed for best practice 2023-10-18 17:05:38 +08:00
Revone
dc2394ae4d [trie] console.log removed from test of trie 2023-10-18 16:35:49 +08:00
Revone
36153238b7 [trie] support casesensitivity. getWords bug fixed 2023-10-18 14:57:47 +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
Revone
c6177ffeb9 [heap, priority queue] Redesigned tested pass 2023-10-15 22:25:42 +08:00
Revone
b78586a0ef [test] double the time 2023-10-12 09:02:59 +08:00
Revone
afd99bdf97 [test] test bug fixed 2023-10-11 23:36:10 +08:00
Revone
f85073bebe [test] Double the duration of the performance test. 2023-10-11 22:30:53 +08:00
Revone
f08819eb83 [core] In order to adhere to best practices, rename the DFS method and the BFS method as dfs and bfs. 2023-10-10 22:15:01 +08:00
Revone
ed1ecf541f [binary-tree] unnecessary geters and setters removed 2023-10-10 21:56:55 +08:00
Revone
45c49c99bf [core] renamed id to key 2023-10-10 19:55:52 +08:00
Revone
2bdfd79b9f [rbtree] implemented, but with bugs 2023-10-10 10:28:23 +08:00
Revone
f4d234df29 [pkgs] all sub packages add unit test cases 2023-10-08 18:25:29 +08:00
Revone
092ac731b4 [pkg] v1.33.8 published 2023-10-05 10:37:42 +08:00
Revone
1687f3cde8 [core] HashTable, HashMap, SkipList implemented 2023-09-29 17:37:30 +08:00
Revone
17e0fcb061 [pkg] v1.33.6 published 2023-09-27 11:56:58 +08:00
Revone
76d5532f51 [test] test cases bug fixed 2023-09-27 10:10:11 +08:00
Revone
19b255737b [test] eslint test directary and format 2023-09-26 19:43:45 +08:00
Revone
b116ac03b0 [test] test cases enriched 2023-09-26 18:43:54 +08:00
Revone
7d566f1c33 [test] Test case coverage is 63.1%. 2023-09-26 17:06:17 +08:00
Revone
89451d2c03 [README] data structures comparation 2023-09-26 12:49:33 +08:00
Revone
80675e2bbb [BinaryTree] leftSum feature eliminated 2023-09-25 17:18:14 +08:00
Revone
96621c72e5 [RBTree] first commit of RBTree. [HashTable] first commit 2023-09-25 15:48:24 +08:00
Revone
45ac7d8d5f [pkg] keywords optimization 2023-09-24 21:31:09 +08:00
Revone
b4643625a0 test coverage report supported. Code quality enhanced and support multiple environments such as ES6 (ESModule), ES5 (CommonJS), and a single file for both browser and Node.js environments (UMD). Supported for source maps. CODE-OF-CONDUCT.md, COMMANDS.md, SECURITY.md, .gitattributes added. 2023-09-22 00:53:34 +08:00
Revone
39ef2b22db [project] quality of package improved. v1.3.6 published 2023-09-21 14:40:39 +08:00