Commit graph

447 commits

Author SHA1 Message Date
Revone
62e55b84bd [graph] The getAllPathsBetween method in the [graph] provides a 'limit' parameter to control this exponential time complexity method from entering into a deadlock state. The getMinPathsBetween method, by default, calls the Dijkstra method to avoid invoking the excessively high time complexity method, getAllPathsBetween. 2023-11-04 21:23:02 +08:00
Revone
5af93dda72 [benchmark] Determine the order of magnitude for most performance tests. Report metric reductions. 2023-11-04 17:28:52 +08:00
Revone
025a90a145 [graph] use 'Set' in dfs instead of 'Map' 2023-11-04 15:47:24 +08:00
Revone
0ecc163944 [project] Replace the performance test report in README.md every time instead of inserting incrementally. 2023-11-04 10:19:09 +08:00
Revone
24a961f692 [BST, AVL] The 'get' method follows the binary search of a BST for bug fixes during queries. [Project] The editor uses 'tsconfig.json' for code checking to be compatible with the 'test' directory, but compiles using their respective configuration files. 2023-11-04 10:00:51 +08:00
Revone
0ab8054f52 [pkg] v1.41.5 published 2023-11-04 01:35:21 +08:00
Revone
bd2ecc5699 [benchmark] enriched the utils of performance test. enriched the performance test cases 2023-11-04 01:21:30 +08:00
Revone
4614773413 [binary-tree] Merge the operation of modifying the value into the insert query process to improve performance. [benchmark] Enhance performance test cases and move existing performance tests from unit tests to the 'performance' section. Improve the benchmark test report. Refine the logic of the report generator. 2023-11-02 21:38:10 +08:00
Revone
9a87fe13b6 [benchmark] beautiful report 2023-11-02 16:10:41 +08:00
Revone
f0777567f2 [project] remove the unnecessary pkg underscore 2023-11-02 11:57:20 +08:00
Revone
ca013f019f [benchmark] pretty html report for benchmark test 2023-11-02 11:38:29 +08:00
Revone
9f2f0fca29 [benchmark] generated a performance testing report. 2023-11-02 09:24:06 +08:00
Revone
68aa49f9b1 [project] Decouple integration testing from the CI workflow. 2023-11-01 18:19:49 +08:00
Revone
e9f2359365 [binary-tree] Let the get method call getNode instead of getNodes. [rbtree] Use rigorous testing to verify that the properties of nodes in a red-black tree adhere to the red-black tree rules after insertion and deletion. 2023-11-01 17:51:38 +08:00
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
ea3ab1283e [rbtree] extracted RBTNColor to types 2023-11-01 11:52:44 +08:00
Revone
82168eb4a2 [rbtree] Currently, the insertion and deletion of 1000 data entries are supported. However, when the data volume increases to 10000 entries, null value issues are bound to arise due to repetitive deletions and additions. 2023-10-31 23:21:54 +08:00
Revone
ed7ead3744 [rbtree] The first successful implementation of Red-Black Tree. 2023-10-31 22:31:56 +08:00
Revone
8ae9bd577c Merge branch 'main' of https://github.com/zrwusa/data-structure-typed 2023-10-31 12:01:38 +08:00
Revone
822b918d8b [binary-tree] type errors fixed 2023-10-31 12:01:10 +08:00
zrwusa
ae175f5db4
Merge pull request #31 from zrwusa/rbtree
Rbtree
2023-10-31 11:44:21 +08:00
Revone
7b0dddc69e [rbtree branch] conflicts resolved 2023-10-31 11:38:54 +08:00
Revone
cc3be9349f [rbtree] rebase from main is ready 2023-10-31 11:35:50 +08:00
Revone
10bbcffcef [pkg] v1.40.0 published 2023-10-31 11:22:21 +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
3009c14c24 [queue] Added some alias methods. 2023-10-31 09:03:06 +08:00
Revone
1822084407 [pkg] v1.39.6 published 2023-10-31 08:43:54 +08:00
Revone
121516f303 [core] Rename all 'val' variables to 'value'. 2023-10-30 20:27:08 +08:00
zrwusa
ce35f0421a
Merge pull request #30 from zrwusa/graph
[graph test] edge cases enriched
2023-10-30 20:09:01 +08:00
Revone
fcec29f32c [graph test] edge cases enriched 2023-10-30 20:08:25 +08:00
Revone
3aea9fc046 v1.39.5 published 2023-10-30 18:53:14 +08:00
zrwusa
63003187ef
Merge pull request #29 from zrwusa/graph
[graph] Modify the data structure design of the graph to change the g…
2023-10-30 18:28:26 +08:00
Revone
d44788bea9 [graph] Modify the data structure design of the graph to change the generics of Vertex and Edge to defaults, where it is possible to only pass the value types of Vertex and Edge for increased usability. 2023-10-30 18:27:58 +08:00
Revone
c001251cfc [binary-tree] this._defaultCallbackByKey deprecated 2023-10-30 11:40:03 +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
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