Commit graph

147 commits

Author SHA1 Message Date
Revone 691fb62893 fix: #117 2024-11-25 20:18:20 +13:00
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 ca7e60e465 fix: rename the keyValueNodeEntryRawToNodeAndValue to _keyValueNodeEntryRawToNodeAndValue and make it protected 2024-11-22 22:55:43 +13:00
Revone a0623db58c style: Beautify code format for test case conversion examples 2024-11-21 11:48:24 +13:00
Revone fde5af1f1c fix: #114. feat: Enhanced SinglyLinkedList methods to support Node type parameters for push, unshift, addAfter, addBefore, getNode, addAt, delete, indexOf; added a new get method. 2024-11-20 22:07:42 +13:00
Revone 09a5d8a11a feat: Enhanced DoublyLinkedList methods to support Node type parameters for push, unshift, addAfter, addBefore, getNode, addAt, delete, indexOf, and getBackward; added a new get method. 2024-11-20 20:43:22 +13:00
Revone 1b0ee601ac fix: Fix the bug where a regex replacement error occurs when test cases contain both .toBeUndefined() and .toBe or .toEqual. 2024-11-20 17:29:44 +13:00
Revone 0ff5ddc410 chore: Implement unit tests as example code in the README.md and source code comments. 2024-11-19 23:20:25 +13:00
Revone 476395ef72 chore: Add source map support for ESModule. Add a 'browser' field to package.json. Performance optimization of getRandomIntArray method 2024-11-16 23:07:53 +13:00
Revone 5adf75f99c fix: Fix the bug where the binary tree repeatedly adds elements with the same key in map mode and the bug where the node’s value is instantiated simultaneously. Enable map mode by default. 2024-11-03 16:38:07 +13:00
Revone 8ae577315a release: v1.52.9 2024-10-31 17:13:36 +13:00
Revone 9e62968e3d release: v1.52.8 2024-10-30 21:28:20 +13:00
Revone aece11bd01 release: v1.52.6 2024-10-29 17:27:40 +13:00
Revone 2acd0fe366 release: version 1.52.4 2024-10-11 11:07:43 +13:00
Revone 986e7cfd8f release: v1.52.3 2024-09-03 10:22:22 +12:00
Revone 5ff8eb97d9 release: v1.52.1 2024-08-04 19:41:40 +12:00
Revone 8616e4ddc4 release: 1.52.0 2024-02-01 23:26:45 +08:00
Revone c2f98f851b release: 1.51.9 2024-01-26 18:26:40 +08:00
Revone 3c26538c2e release: 1.51.8 2024-01-25 10:55:59 +08:00
Revone 82acc04e6f release: 1.51.7 2024-01-19 18:06:28 +08:00
Revone 3fa7155c97 fix: #82. refactor: Minor performance optimization, rewrite the _compare method within the Red-Black Tree. test: Change the test sequence in binary-tree-overall.test. 2024-01-19 17:13:25 +08:00
Revone 5d41696998 release: 1.51.6 2024-01-18 19:18:15 +08:00
Revone c6b9564db7 release: 1.51.4 2024-01-17 22:43:32 +08:00
Revone 25e9f36577 feat: Remove the meaningless Tree data structure.
refactor: Adjust the logic of isRealNode for a slight performance improvement.
docs: table fixed
2024-01-16 11:26:43 +08:00
Revone 6ca47958bf release: 1.51.2 2024-01-15 21:14:50 +08:00
Revone 56f1fabfca refactor: Renaming SENTINEL to NIL and placing the NIL node in the BinaryTree allows for direct equality checks in isNIL and isRealNode, avoiding excessive operations to improve performance. As a result, the performance of the get method in AVLTree has tripled. 2024-01-15 21:05:42 +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 46cdf2b668 release: 1.50.9 2024-01-14 20:57:07 +08:00
Revone 25de27cf6c fix: Explicitly specify IterationType. 2024-01-14 18:59:28 +08:00
Revone d0b3fcf164 release: 1.50.7 2024-01-12 14:33:45 +08:00
Revone e1631a8e3e refactor: Define a generic CRUD enum to represent operational states. 2024-01-12 11:07:33 +08:00
Revone 1f8fc1487c Refactor: Due to critical issues in the previous implementation of the Red-Black Tree, it has been deprecated and replaced with a new implementation of both the Red-Black Tree and TreeMultiMap. 2024-01-11 20:13:02 +08:00
Revone 4747839d88 Refactor: Standardize addition and removal methods for all sequential data structures to push, pop, shift, unshift. 2024-01-09 12:04:50 +08:00
Revone e2ab386df3 release: 1.50.3 2024-01-08 09:49:33 +08:00
Revone ba16f311c3 Refactor: Organize the access permissions of all member variables. Docs: Partial documentation for time and space complexity. 2024-01-05 15:37:28 +08:00
Revone ec649bd8bb test: reorgnization. docs: improved a lit bit 2023-12-30 11:49:59 +08:00
Revone baf1be4035 release: 1.50.0. docs: traversal methods 2023-12-29 11:24:25 +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 689aa0f57e feat: Provide convenient option of the raw data processing function 'toEntry' in HashMap.options. 2023-12-25 20:24:41 +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 c949b5b741 refactor: Rearrange constructor parameters for all data structures, with the first parameter being the output and the second parameter being a configuration object. Make all configuration object properties optional.
fix: Provide optional parameters for inheritable data structures to facilitate inheritance. #64
2023-12-24 17:44:55 +08:00
Revone 0708509f3e release: 1.49.5 2023-12-22 20:04:08 +08:00
Revone dc6ef95f78 style: code base reformat 2023-12-21 10:26:45 +08:00
Revone c3db558607 Refactor: The default callback function now supports returning values for null and undefined nodes with undefined keys. The deleteVertex method in AbstractGraph has been made abstract. Unnecessary magnitude variables have been removed from the magnitude function. fix: In directed and undirected graphs, the deleteVertex method now removes edges from adjacent nodes when deleting a vertex. 2023-12-21 10:01:04 +08:00
Revone 6ceaf21fba release: 1.49.2 2023-12-15 09:53:59 +08:00
Revone 61369adbdd test: Refine the test cases. 2023-12-12 10:13:34 +08:00
Revone 9d4228c9fe refactor: Represent the optional parameters in the dijkstraWithoutHeap and dijkstra methods using default arguments. Use the Heap data structure instead of PriorityQueue. 2023-12-11 09:41:24 +08:00
Revone 26208e9157 release: 1.48.9 2023-12-08 20:03:48 +08:00
Revone c3b79b70f6 docs: Add a GITHUB stars badge. Adjust the order of the table. Test: Specify the type of binary tree constructor. 2023-12-08 10:07:51 +08:00
Revone e167771620 docs: Benchmarking metrics compared to native JavaScript 2023-12-08 09:04:49 +08:00