Commit graph

  • bf37a4df7f style: optimization of code style of HashMap main zrwusa 2024-09-19 17:20:58 +1200
  • 986e7cfd8f release: v1.52.3 Revone 2024-09-03 10:22:22 +1200
  • 93981f6932 Merge branch 'main' of https://github.com/zrwusa/data-structure-typed Revone 2024-09-03 09:45:06 +1200
  • 022c337ca9
    Merge pull request #94 from sjunepark/trie zrwusa 2024-09-03 09:31:09 +1200
  • f2bbba8a9b chore: loop to check if remote package is exist Revone 2024-09-03 09:28:46 +1200
  • 59cf685395 fix(trie): trie returns invalid string when only the fist character matches, and the second doesn't match June Park 2024-09-03 00:49:53 +0900
  • 7e45aaf609 style: Prettier version updated. Code style adhered to Prettier strictly. Revone 2024-08-27 10:56:04 +1200
  • ac1712ba04 feat: supports compact method to save memory. #91 Revone 2024-08-27 10:24:38 +1200
  • 5ff8eb97d9 release: v1.52.1 Revone 2024-08-04 19:41:40 +1200
  • 6710e9d41e release: v1.52.1 Revone 2024-08-04 19:20:21 +1200
  • 3e91a97987 fix: #89. Supports maxLen for max length of the Deque Revone 2024-08-04 19:19:14 +1200
  • c7dbfd54f1 fix: #87 Revone 2024-08-04 19:05:19 +1200
  • abfb441bc7 docs: priority queue is heap Revone 2024-08-02 10:15:56 +1200
  • 6642f8b66b docs: plain language explanations Revone 2024-07-31 21:04:20 +1200
  • 5d146cbfc2 docs: refined the table of deferences of data structures Revone 2024-07-31 14:33:55 +1200
  • 7f32fee19a docs: Added a document detailing the differences between various data structures, including schematic diagrams of the data structures. Revone 2024-07-31 14:10:32 +1200
  • 5dc132cb2a fix: #86 Revone 2024-03-16 09:59:48 +0800
  • ec8242044a refactor: Renamed some type aliases Revone 2024-03-16 09:47:22 +0800
  • 94d34e61e7 Merge branch 'main' of https://github.com/zrwusa/data-structure-typed Revone 2024-02-01 23:26:49 +0800
  • 8616e4ddc4 release: 1.52.0 Revone 2024-02-01 23:26:45 +0800
  • 1ae9e929b1 feat: Provide the toElementFn method during instantiation for the entire data structure series, allowing the mapping of raw data to the desired data type and direct insertion of data into the data structure to be completed within a single loop. fix: Override the corresponding clone, filter, and map methods in the Heap and PriorityQueue data structures, ensuring the accurate return of the respective data structures. #84 fixed. Revone 2024-02-01 21:05:10 +0800
  • 6539e50598 feat: Provide custom toElementFn in Heap configuration options to transform user raw data into a specified element type within a single loop. Revone 2024-01-31 10:04:21 +0800
  • 8051850331 feat: When comparing two values in the Heap and binary search tree, if one of the values is of object type, it is mandatory to pass a custom comparator function. Revone 2024-01-29 20:23:06 +0800
  • 3028a78985 Refactor: Abandon the use of Comparable types as keys for the binary tree, as the '>', '>=', '<', '<=' operators are supported by the any type. The heap also adopts the same comparator as the binary tree. Revone 2024-01-29 11:35:24 +0800
  • 6fccb57f1b
    Update README.md zrwusa 2024-01-27 11:10:38 +0800
  • c2f98f851b release: 1.51.9 Revone 2024-01-26 18:26:40 +0800
  • 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. Revone 2024-01-26 18:20:15 +0800
  • 3c26538c2e release: 1.51.8 Revone 2024-01-25 10:55:59 +0800
  • 0013242189 Refactor: In the binary search tree data structure, use a comparator instead of a variant configuration for comparison. Revone 2024-01-25 10:24:25 +0800
  • 89dadfccc2 Refactor: Remove the unnecessary design of the extractor in the Binary Search Tree (BST). Utilize 1, -1, and 0 to replace the original comparison results GT, LT, and EQ. Revone 2024-01-25 09:38:03 +0800
  • 1303aba070 refactor: Use Comparable type constraint for the key in the binary tree to improve comparator performance. Revone 2024-01-24 18:38:34 +0800
  • 82acc04e6f release: 1.51.7 Revone 2024-01-19 18:06:28 +0800
  • ae11bca83c Refactor: Added the _ensureCallback method to eliminate redundant code. Revone 2024-01-19 18:02:56 +0800
  • 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. Revone 2024-01-19 17:13:25 +0800
  • 2eac608960 release: 1.51.6 Revone 2024-01-18 19:18:29 +0800
  • 5d41696998 release: 1.51.6 Revone 2024-01-18 19:18:15 +0800
  • 4bebf6c261 docs: downloads added to individual packages v1.51.5 Revone 2024-01-18 18:53:05 +0800
  • b442db39e8 docs: fix the links Revone 2024-01-18 12:01:01 +0800
  • c6b9564db7 release: 1.51.4 Revone 2024-01-17 22:43:32 +0800
  • 18b1fab16d feat: Restore the TreeNode data structure. Add number utilities to the utils module. docs: Update POSTS_zh-CN.md. Revone 2024-01-17 22:27:38 +0800
  • 25e9f36577 feat: Remove the meaningless Tree data structure. refactor: Adjust the logic of isRealNode for a slight performance improvement. docs: table fixed Revone 2024-01-16 11:26:43 +0800
  • e2f554fb5c docs: re-organized Revone 2024-01-16 11:01:27 +0800
  • bb37adbe68 release: 1.51.3. chore: Restore keyword list to version 1.47.4. Revone 2024-01-16 10:40:21 +0800
  • 6ca47958bf release: 1.51.2 Revone 2024-01-15 21:14:50 +0800
  • 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. Revone 2024-01-15 21:05:42 +0800
  • 173966edea release: 1.51.1 Revone 2024-01-15 12:13:05 +0800
  • 9915ce9a0d Refactor: Rename _defaultOneParamCallback to _DEFAULT_CALLBACK. Adopt early return code style in the ensureNode method. Rename some internal recursive method names. Revone 2024-01-15 12:12:01 +0800
  • 46cdf2b668 release: 1.50.9 Revone 2024-01-14 20:57:07 +0800
  • 76df347da5 efactor: completely eliminate the use of enumerations Revone 2024-01-14 19:49:50 +0800
  • 25de27cf6c fix: Explicitly specify IterationType. Revone 2024-01-14 18:59:28 +0800
  • 312ba2f492 release: 1.50.8 Revone 2024-01-14 03:15:17 +0800
  • 1c2a70741b test: RedBlackTree Revone 2024-01-14 03:14:26 +0800
  • a11c104dff refactor: Replace all enumerations with union types for significant performance improvements in BST, AVLTree, and RedBlackTree. Revone 2024-01-14 03:04:07 +0800
  • d0b3fcf164 release: 1.50.7 Revone 2024-01-12 14:33:45 +0800
  • a653d465fa Refactor: Use 'this.isRealNode' instead of explicit null checks in getHeight, getMinHeight, and getNodeByKey methods in the binary tree. In the red-black tree, directly invoke the parent class getNode method, significantly improving the speed of red-black tree node deletion and retrieval. Revone 2024-01-12 14:15:05 +0800
  • 644ce69190 Refactor: Review methods in the binary tree that require explicit 'override' annotation. Feat: Add the 'getMutableCount' method to AVLMultiMap. Revone 2024-01-12 11:28:15 +0800
  • e1631a8e3e refactor: Define a generic CRUD enum to represent operational states. Revone 2024-01-12 11:07:33 +0800
  • c812f43a04 release: 1.50.6 Revone 2024-01-11 20:28:51 +0800
  • 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. Revone 2024-01-11 20:13:02 +0800
  • f8832a04c0 refactor: Constrain the getter size() from the base class. Refactor some inappropriate performance tests. feat: Add sorting capability to performance test reports. Revone 2024-01-09 15:57:30 +0800
  • 4747839d88 Refactor: Standardize addition and removal methods for all sequential data structures to push, pop, shift, unshift. Revone 2024-01-09 12:04:50 +0800
  • 70882d24fc release: 1.50.4 Revone 2024-01-08 22:29:10 +0800
  • 996837734a Merge branch 'main' of https://github.com/zrwusa/data-structure-typed Revone 2024-01-08 22:25:31 +0800
  • 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. Revone 2024-01-08 22:22:41 +0800
  • 27697259a1
    Update issue templates zrwusa 2024-01-08 21:48:29 +0800
  • e2ab386df3 release: 1.50.3 Revone 2024-01-08 09:49:33 +0800
  • 6e4d113004 release: 1.50.3 Revone 2024-01-07 22:55:34 +0800
  • a95567b3c4 release: 1.50.3 Revone 2024-01-07 22:32:39 +0800
  • a01d0c82b1 release: 1.50.3 Revone 2024-01-07 22:27:31 +0800
  • 5c9f4fd483 fix: #74 . Refactor: Implement the Tarjan algorithm separately for DirectedGraph and UndirectedGraph. In the previous design, the tarjan method was placed in the AbstractGraph class. However, Tarjan algorithm is used to find connected components in directed graphs and to solve bridges, articulation points, determine the presence of cycles (though not all), and biconnected components in undirected graphs. The algorithm for finding all cycles in the graph can be shared between directed and undirected graphs using the getCycles method. Revone 2024-01-07 22:25:25 +0800
  • e91970c09f refactor: Directly constrain the methods clear, map, and filter in the base class. feat: Implement the clear method in DirectedGraph, UndirectedGraph, and Trie. docs: Add SPECIFICATION.md, SPONSOR.md, and SPONSOR_zh-CN.md. Adjust badge order and add a new contributor count badge. Revone 2024-01-06 17:50:00 +0800
  • ba16f311c3 Refactor: Organize the access permissions of all member variables. Docs: Partial documentation for time and space complexity. Revone 2024-01-05 15:37:28 +0800
  • cd2db0b45e release: 1.50.2 Revone 2024-01-04 16:28:50 +0800
  • eaf8912746 docs: Verify the time and space complexity for each method. feat: Add the cutRest method to Deque. refactor: Update the cut method in Deque to support the isCutSelf parameter. Revone 2024-01-04 16:28:17 +0800
  • ce6440bfa2
    Merge pull request #69 from Oaz/main zrwusa 2024-01-03 16:01:43 +0800
  • ecf4d6ad11 fix: Fix bug #71. feat: Define abstract methods through a base class to add clone and isEmpty methods to all data structures. Add delete and deleteAt methods to Deque, Queue, and Stack data structures. refactor: Optimize the type definition N to NODE for alignment with the design of TREE. Revone 2024-01-03 15:52:10 +0800
  • ba6b666b44
    Merge branch 'zrwusa:main' into main Olivier Azeau 2024-01-02 08:46:30 +0100
  • b965ec22db added tests for DirectedGraph.tarjan Olivier Azeau 2024-01-02 08:45:55 +0100
  • 58ea2cb3c3 docs: Complete all code comments. Revone 2024-01-01 10:45:32 +0800
  • 831ad3bd98 refactor: rename method 'getAt' to 'at' Revone 2023-12-30 20:36:11 +0800
  • ff8f907192 feat: In the IterableEntryBase and IterableElementBase classes, add find, get, and has methods so that all inheriting data structures can have access to these methods. Also, override these methods in the necessary data structures as needed. Revone 2023-12-30 18:44:24 +0800
  • c28deb8d81 refactor: Rename exemplarToNode to keyValueOrEntryToNode. feat: Implement the clone method for all data structures. Revone 2023-12-30 17:50:57 +0800
  • ec649bd8bb test: reorgnization. docs: improved a lit bit Revone 2023-12-30 11:49:59 +0800
  • 6b3d8b9fa5 release: 1.50.1 Revone 2023-12-29 21:50:53 +0800
  • 12abe48b33 chore: SEO optimization Revone 2023-12-29 21:50:20 +0800
  • a9c556fce3 docs:Sequential Organization Revone 2023-12-29 16:42:20 +0800
  • baf1be4035 release: 1.50.0. docs: traversal methods Revone 2023-12-29 11:24:25 +0800
  • 34d4abd9e6 fix: #38 Removed includeNull parameter from traversal methods. feat: Removed unnecessary methods isNotNodeInstance and subTreeTraverse. refactor: Organized the overloads of traversal methods. Revone 2023-12-29 11:15:19 +0800
  • 8fd35dd1f8 release: 1.49.9 Revone 2023-12-25 20:25:13 +0800
  • 689aa0f57e feat: Provide convenient option of the raw data processing function 'toEntry' in HashMap.options. Revone 2023-12-25 20:24:41 +0800
  • 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. Revone 2023-12-25 10:56:04 +0800
  • 50a5c06798 release: 1.49.7 Revone 2023-12-24 17:55:42 +0800
  • fa9e3dbac4 docs: Enhance the explanation of the theory that respects computer science. Revone 2023-12-24 17:54:51 +0800
  • 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. Revone 2023-12-24 17:44:55 +0800
  • fdf5d06245 release: 1.49.6 Revone 2023-12-23 12:07:50 +0800
  • d57d6072c2 fix: Fix bug in BST.isBST to make it compatible with inverse BST. refactor: Use KeyOrNodeOrEntry as the parameter type consistently in the binary tree data structure. test: Remove unnecessary performance reports and refactor loop code to use single lines wherever possible. Revone 2023-12-23 11:53:18 +0800
  • 677340e99c refactor: Remove isSubtreeBST; using isBST alone is sufficient. Update BSTVariant to use STANDARD and INVERSE instead of MIN and MAX. feat: Enhance isBST to support the detection of inverse binary search trees. Revone 2023-12-23 09:41:04 +0800
  • 0708509f3e release: 1.49.5 Revone 2023-12-22 20:04:08 +0800
  • 2247316d16 refactor: Remove the _addTo method from BinaryTree and TreeMultiMap. feat: Reimplement Matrix. docs: Use typedoc.json configuration to only output class documentation. Revone 2023-12-22 19:59:38 +0800
  • 836f8edf5c Update 3 files data-structure-typed Ruiwen Zeng 2023-12-21 06:12:42 +0000