Revone
f8832a04c0
refactor: Constrain the getter size() from the base class. Refactor some inappropriate performance tests.
...
feat: Add sorting capability to performance test reports.
2024-01-09 15:57:30 +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
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
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.
2024-01-07 22:25:25 +08:00
Revone
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.
2024-01-06 17:50:00 +08:00
Revone
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.
2024-01-04 16:28:17 +08:00
Revone
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.
2024-01-03 15:52:10 +08:00
Revone
ec649bd8bb
test: reorgnization. docs: improved a lit bit
2023-12-30 11:49:59 +08:00
Revone
12abe48b33
chore: SEO optimization
2023-12-29 21:50:20 +08:00
Revone
a9c556fce3
docs:Sequential Organization
2023-12-29 16:42:20 +08:00
Revone
fa9e3dbac4
docs: Enhance the explanation of the theory that respects computer science.
2023-12-24 17:54:51 +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
fdf5d06245
release: 1.49.6
2023-12-23 12:07:50 +08:00
Revone
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.
2023-12-23 11:53:18 +08:00
Revone
2247316d16
refactor: Remove the _addTo method from BinaryTree and TreeMultiMap.
...
feat: Reimplement Matrix.
docs: Use typedoc.json configuration to only output class documentation.
2023-12-22 19:59:38 +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
3e97e806ba
refactor: Unify the return types of all methods and align them with Java, extract the print and hasValue methods to base class. This will make the code more consistent and easier to understand.
2023-12-12 21:14:17 +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
7270a27425
docs: Benchmarking metrics compared to native JavaScript
2023-12-08 09:15:29 +08:00
Revone
e167771620
docs: Benchmarking metrics compared to native JavaScript
2023-12-08 09:04:49 +08:00
Revone
aff29b3568
docs: Why use our data structures.
2023-12-07 15:37:50 +08:00
Revone
d038e03ef2
docs: Chinese version README.md
2023-12-07 14:03:58 +08:00
Revone
a0a9ed2f50
docs: Chinese version README.md
2023-12-07 11:40:01 +08:00
Revone
c92e1974fe
docs: Reorganize the correspondence of data structures in different languages once again.
2023-12-07 10:47:50 +08:00
Revone
7365f661db
docs: Snippets of TS
2023-12-04 22:09:09 +08:00
Revone
8a24a6d7a4
refactor: The binary tree data structure supports custom types for keys
2023-12-04 21:58:41 +08:00
Revone
f24901de2a
release: 1.48.2
2023-12-02 22:29:00 +08:00
Revone
2e26bc0fef
docs: LinkedHashMap
2023-12-02 22:21:13 +08:00
Revone
87ea490458
feat: print method has been added in HashMap. chore: reformated HashMap test. docs: high-performance HashMap benchmark
2023-11-30 10:20:12 +08:00
Revone
e1e672b3b5
refactor: Extract the isNode and exemplarToNode methods to achieve best practices.
2023-11-27 13:38:26 +08:00
Revone
a71b223226
docs: Add print results for free conversion between data structures.
2023-11-27 10:12:15 +08:00
Revone
3dc0454c24
docs: Integration tests and documentation for free conversion between data structures.
2023-11-25 22:49:54 +08:00
Revone
76db084bda
refactor: Explicitly call the super.addMany method. chore: reformat project configs
2023-11-25 20:59:34 +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
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
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
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
42345f813f
chore: Perfectly optimize keywords and project descriptions.
2023-11-21 11:02:10 +08:00
Revone
d6e186a884
chore: To avoid sacrificing performance, UMD modules use ES6 style.
2023-11-20 19:24:53 +08:00
Revone
d3a6bdac25
fix: type error fixed. docs: Remove unnecessary 'Software Engineering Design Standards'.
2023-11-20 15:14:13 +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
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
5c6803b1a9
docs: Deque docs enriched, big o notations
2023-11-19 08:56:37 +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