Commit graph

275 commits

Author SHA1 Message Date
Revone
50e8d9f315 release: v2.0.3 2025-03-01 16:14:36 +13:00
Revone
6dfcc7603f styles: Simplify trampoline to a traditional approach. release: Publish version 2.0.2. 2025-03-01 15:58:43 +13:00
Revone
c2dc5aa914 feat: Use Number.MAX_SAFE_INTEGER instead of Infinity. 2025-01-23 19:12:20 +13:00
Revone
de0a2f1053 release: 2.0.0 2024-12-05 20:26:31 +13:00
Revone
9224252367 perf: Optimize the performance of indexOf, lastIndexOf, slice, and splice methods in Queue, Deque, SinglyLinkedList, and DoublyLinkedList. The performance is now satisfactory with a dataset of 1 million elements. 2024-12-05 20:23:26 +13:00
Revone
670225e775 fix: Fix the issue where an extra array layer was processed for entries during TreeMultiMap instantiation.
feat: Add support for  configuration in TreeMultiMap and AVLTreeMultiMap.
docs: Add example code for a game leaderboard using TreeMultiMap.
2024-12-03 11:47:32 +13:00
Revone
ae42526b91 release: v1.54.3 2024-12-02 20:36:27 +13:00
Revone
116324610d docs: playground project added 2024-11-30 21:50:45 +13:00
Revone
dd27393049 fix: Remove export restrictions in package.json to enable ESModules to work properly. 2024-11-30 19:29:37 +13:00
Revone
8b247456f5 release: v1.54.1 2024-11-30 13:34:05 +13:00
Revone
b16559bc54 feat: Implemented correct TreeMultiMap and AVLTreeMultiMap. Removed support for Raw parameters in the add and delete methods, #115.
fix: Reimplemented the original TreeMultiMap and AVLTreeMultiMap as two new data structures: TreeCounter and AVLTreeCounter, #108.
style: Code cleanup, such as removing unnecessary comments.
docs: Fixed some time complexity and space complexity.
chore: Changed the ESModules build directory to the standard dist/ems.
2024-11-30 13:16:46 +13:00
Revone
6dc64dbb53 fix: Discard the awkward type-safe implementation in the binary tree data structure where subclasses need to pass the node type and tree type back to the parent class. 2024-11-28 19:37:51 +13:00
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
1494ffa84f docs: more example code for RedBlackTree and BinarySearchTree 2024-11-24 17:37:33 +13:00
Revone
ca7e60e465 fix: rename the keyValueNodeEntryRawToNodeAndValue to _keyValueNodeEntryRawToNodeAndValue and make it protected 2024-11-22 22:55:43 +13:00
Revone
c3122e7fc7 fix: Type safety fixes for ComparableObject.
feat: Use extractComparable in the BST data structure to control key comparisons instead of directly passing a comparator. Use isReverse to control whether the tree is reversed instead of relying on the comparator.
Removed the unnecessary getNodeByKey method.chore: Support list configuration for performance testing.
2024-11-22 17:12:06 +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
f84518cc6d fix: Fixed a bug in the DoublyLinkedList.delete method. Improved the feature for generating sample code documentation for test cases. Added classic example code for Heap and DoublyLinkedList. 2024-11-20 16:27:37 +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
37ff9207fe release: v1.53.0 2024-11-01 19:40:53 +13:00
Revone
28ff30ea4b feat: The binary trees support storing values in a Map and provides parameters for Map mode. #111. Rename type definitions and parameter names to align with best practices. 2024-11-01 19:40:19 +13:00
Revone
8ae577315a release: v1.52.9 2024-10-31 17:13:36 +13:00
Revone
5992ae5d0d release: v1.52.8 wiht ci flow fixed 2024-10-31 09:41:03 +13:00
Revone
9e62968e3d release: v1.52.8 2024-10-30 21:28:20 +13:00
Revone
487f45f6b2 release: v1.52.7 2024-10-30 21:00:03 +13:00
Revone
fc0d157295 refactor: Test coverage increased to 95.63%.
Upgraded all dependencies.
Added a toVisual method while retaining the print method.
Replaced all short-circuit evaluations with logical expressions.
2024-10-30 15:30:28 +13:00
Revone
aece11bd01 release: v1.52.6 2024-10-29 17:27:40 +13:00
Revone
a29dc270e6 Change the print method to return a value instead of directly calling console.log.Unify the logic of all keyValueOrEntryOrRawElementToNode methods in BinaryTree.
Use a generic isComparable method to determine if a value is comparable in size when using the isKey method in the BinaryTree.
Fix the boundary value bug in the getNodes method of BinaryTree.
Support callback functions in getLeftMost and getRightMost to support returning results with different properties.
If a comparator is specified for BST, the isKey method will force the object type to be comparable.
The isComparable method has been implemented based on JavaScript's comparison principles.
2024-10-29 16:23:24 +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
7e45aaf609 style: Prettier version updated. Code style adhered to Prettier strictly. 2024-08-27 10:56:04 +12:00
Revone
5ff8eb97d9 release: v1.52.1 2024-08-04 19:41:40 +12:00
Revone
6710e9d41e release: v1.52.1 2024-08-04 19:20:21 +12:00
Revone
c7dbfd54f1 fix: #87 2024-08-04 19:05:19 +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
2eac608960 release: 1.51.6 2024-01-18 19:18:29 +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
e2f554fb5c docs: re-organized 2024-01-16 11:01:27 +08:00
Revone
bb37adbe68 release: 1.51.3. chore: Restore keyword list to version 1.47.4. 2024-01-16 10:40:21 +08:00
Revone
6ca47958bf release: 1.51.2 2024-01-15 21:14:50 +08:00