Commit graph

31 commits

Author SHA1 Message Date
Revone 1a1ea21444 fix: Adjust type safety for the map method of all binary trees, ensuring it no longer returns the TREE type to its parent class and limiting Node type nesting to a maximum of 10 levels. Fix the issue with RedBlackTree objects being incorrectly compared when used as keys. Rename extractComparable to specificComparable. Correct the order of key and value in callback functions for the map and filter methods. 2024-11-25 01:10:33 +13:00
Revone 02d71a23ba Refactor: All binary tree data structures now support the toEntryFn for extracting key and value from raw data at once, avoiding users from having to traverse data multiple times, thus improving performance. Chore: Explicitly use the override keyword. 2024-01-26 18:20:15 +08:00
Revone 1303aba070 refactor: Use Comparable type constraint for the key in the binary tree to improve comparator performance. 2024-01-24 18:38:34 +08:00
Revone 9915ce9a0d Refactor: Rename _defaultOneParamCallback to _DEFAULT_CALLBACK. Adopt early return code style in the ensureNode method. Rename some internal recursive method names. 2024-01-15 12:12:01 +08:00
Revone 465744c2ec feat: Replace the AVLTree with a Red-Black Tree to implement TreeMultiMap, preserving the implementation of TreeMultiMap using AVLTree and renaming it as AVLTreeMultiMap. 2024-01-08 22:22:41 +08:00
Revone 34d4abd9e6 fix: #38 Removed includeNull parameter from traversal methods.
feat: Removed unnecessary methods isNotNodeInstance and subTreeTraverse.
refactor: Organized the overloads of traversal methods.
2023-12-29 11:15:19 +08:00
Revone eb590d6c27 feat: Remove support for the 'variant' option parameter in Red-Black Tree, meaning no support for reverse Red-Black Tree.
fix: Fix bug in the return value of the Red-Black Tree delete method.
test: Test the clone methods of all the binary tree data structures.
2023-12-25 10:56:04 +08:00
Revone 20550fb718 feat: Implement the [Symbol.iterator], forEach, filter, map, and reduce methods for Graph, specifically targeting the nodes. fix: type error fixed 2023-11-27 11:24:23 +08:00
Revone a71b223226 docs: Add print results for free conversion between data structures. 2023-11-27 10:12:15 +08:00
Revone f3df66eef3 refactor: In Graph data structures, only use 'undefined' and abandon the design where both 'null' and 'undefined' coexist. 2023-11-26 20:11:29 +08:00
Revone 3dc0454c24 docs: Integration tests and documentation for free conversion between data structures. 2023-11-25 22:49:54 +08:00
Revone 9a430fdbc6 docs: Binary Tree print method 2023-11-22 21:29:44 +08:00
Revone a41e222481 feat: Implement forEach, filter, map, reduce, and [Symbol.iterator] methods for all binary tree data structures 2023-11-22 17:18:37 +08:00
Revone 54c74f9af6 feat: The print method supports switches for empty nodes and guardian nodes. refactor: It eliminates some unnecessary type definitions. 2023-11-21 17:30:57 +08:00
Revone 7e3aeb8d2a chore: reformat codebase 2023-11-20 19:27:25 +08:00
Revone d6e186a884 chore: To avoid sacrificing performance, UMD modules use ES6 style. 2023-11-20 19:24:53 +08:00
Revone 92552da31c fix: binary tree print bug fixed. test: integration test of rb-tree 2023-11-20 17:30:55 +08:00
Revone be6ad5473b style: Change ESLint configuration from error type to warning type. Format the code. 2023-11-16 11:55:40 +08:00
Revone 1064ad4a58 style: reformat code with IDE 2023-11-13 13:07:28 +08:00
Revone 55ddc661eb test: Compare performance with other libraries. 2023-11-13 12:50:33 +08:00
Revone 649101ebe0 release: v 1.43.1 2023-11-13 00:03:42 +08:00
Revone cef8b04a9f chore: Add comments for the time and space complexity of all methods for the BinaryTree. 2023-11-10 11:01:49 +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 31c228668e [optimization] allow all list datatype delete methods to accept null as an input argument 2023-10-26 16:45:08 +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 2953ec61af [git] Overwrite the rbtree branch based on the old version of the main branch 2023-10-19 09:42:24 +08:00
Revone 2bdfd79b9f [rbtree] implemented, but with bugs 2023-10-10 10:28:23 +08:00
Revone 092ac731b4 [pkg] v1.33.8 published 2023-10-05 10:37:42 +08:00
Revone 89451d2c03 [README] data structures comparation 2023-09-26 12:49:33 +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
Renamed from tests/integration/index.html (Browse further)