Commit graph

439 commits

Author SHA1 Message Date
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 982152abc0 fix: type fixed 2023-11-25 22:33:38 +08:00
Revone f9f9df81f5 feat: Perfectly implement fast conversion between data structures. Implement a getter size for Trie. docs: Add comments to the 'add' and 'addMany' methods of all binary tree data structures. 2023-11-25 22:32:09 +08:00
Revone 76db084bda refactor: Explicitly call the super.addMany method. chore: reformat project configs 2023-11-25 20:59:34 +08:00
Revone b099b759e8 refactor: The strategy of all binary tree data structures is to replace a node only when the same node is added. 2023-11-25 20:40:11 +08:00
Revone 18b895cb4c refactor: The parameters for the add and addMany methods in all binary tree data structures have been changed to the entry style, and the first test has passed. 2023-11-25 14:38:32 +08:00
Revone cd14ec79ec refactor: Use a type BTNExemplar to simplify the method parameters of binary tree data structures. 2023-11-24 09:58:10 +08:00
Revone 451f6c5e31 release: 1.47.6 2023-11-24 08:49:18 +08:00
Revone 4930f87bcd feat: Add an 'elements' parameter to the constructors of all binary tree data structures to accept Iterable types. 2023-11-23 21:43:45 +08:00
Revone 8f9eb82bfd feat: To support conversion between data structures, Heap, PriorityQueue, Queue, Deque, SinglyLinkedList, DoublyLinkedList, and Stack have all added an 'elements' parameter for initializing the elements of the data structure. 2023-11-23 18:40:30 +08:00
Revone c8210d9b0c release: 1.47.5 2023-11-23 13:22:41 +08:00
Revone 5cf88d098e feat: All data structures except Graph have implemented *[Symbol.iterator], forEach, filter, map, reduce methods. 2023-11-23 13:19:13 +08:00
Revone 37e32fedcf chore: red-black-tree-typed npm module added. All the sub modules READMEs are modified 2023-11-22 22:10:00 +08:00
Revone 76294d006d release: 1.47.2 2023-11-22 21:30:31 +08:00
Revone 9a430fdbc6 docs: Binary Tree print method 2023-11-22 21:29:44 +08:00
Revone 3205f90cf6 docs: Reorganize some content in the README 2023-11-22 19:00:06 +08:00
Revone 12e9eab287 release: 1.47.1 2023-11-22 17:39:41 +08:00
Revone b53156fb48 fix: createTree return type check 2023-11-22 17:37:43 +08:00
Revone 4162aeeb9d release: 1.47.0 2023-11-22 17:32:49 +08:00
Revone edbbf4a951 fix: type check for 'typeof this' is not supported in TS 4.9.5 2023-11-22 17:31:51 +08:00
Revone 6d67fbc81e release: 1.46.9 2023-11-22 17:19:25 +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 01b969edca refactor: rename NIL of RedBlackTree to Sentinel 2023-11-21 17:44:22 +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 cbe6dedfd6 release: v1.46.8 2023-11-21 14:20:13 +08:00
Revone 9ae8416df1 docs: Automate the writing of the table of contents for README.md. chore:Remove unused npm packages. 2023-11-21 14:16:06 +08:00
Revone 1c90d1e9c9 release: v1.46.7 2023-11-21 11:03:02 +08:00
Revone 42345f813f chore: Perfectly optimize keywords and project descriptions. 2023-11-21 11:02:10 +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 5eaf1d6aab fix: Ignore inserting the duplicate into RedBlackTree. refactor: renamed the helpers to common 2023-11-20 16:15:49 +08:00
Revone d3a6bdac25 fix: type error fixed. docs: Remove unnecessary 'Software Engineering Design Standards'. 2023-11-20 15:14:13 +08:00
Revone 7c6e5d3b1c refactor: HashMap supports custom hash functions. 2023-11-20 13:03:39 +08:00
Revone 1e2013df5e refactor: Eliminate unnecessary data structures. test: Add performance comparison tests with native Map and Set. 2023-11-20 09:51:34 +08:00
Revone b7357def44 test: HashMap test case conducted on million data 2023-11-19 21:30:17 +08:00
Revone cbf1d05064 refacor: If individual performance test, not to replace content in README.md 2023-11-19 21:26:04 +08:00
Revone b2d31e2c44 chore: run cjs, mjs build before test performance 2023-11-19 21:16:20 +08:00
Revone b4e89d9f72 refactor: Discard the unnecessary Iterator class in Deque and HashMap, and instead implement using Generators. 2023-11-19 21:09:44 +08:00
Revone b089cf47b3 refactor: In the Deque data structure, abandon the Iterator class and implement using a Generator instead. 2023-11-19 20:48:53 +08:00
Revone 95621da654 chore: Check if the latest version of the npm package is already installable. 2023-11-19 17:48:54 +08:00
Revone 6f74397f8d fix: Iterator supports function length or function size 2023-11-19 09:04:48 +08:00
Revone 5c6803b1a9 docs: Deque docs enriched, big o notations 2023-11-19 08:56:37 +08:00
Revone a4a35731d2 fix: Deque delete param correctly used 2023-11-17 22:43:12 +08:00
Revone 2634c99388 feat: high-performance Deque implemented 2023-11-17 22:37:35 +08:00
Revone d761e79e4d fix: Bug fix for 'resize', 'insertAt', and 'deleteAt'. 2023-11-17 18:44:14 +08:00
Revone e7be7b559d feat: Implemented Deque independently and conducted performance tests, and eliminated the redundant data structure ArrayDeque. Add performance test cases for DoublyLinkedList. 2023-11-17 16:11:31 +08:00
Revone fa92ddfdaa perf: Implemented a high-performance Heap. docs: Software Engineering Standard Form. 2023-11-17 10:47:13 +08:00
Revone 589dcbff35 docs: Add online algorithm visualization links. 2023-11-16 21:43:45 +08:00