Commit graph

174 commits

Author SHA1 Message Date
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
Revone f9b6f313c6 feat: The performance report generator supports parameter filtering commands, which can be used to run specific tests individually. It generates individual performance comparison reports. Enrich the COMMANDS.md document. 2023-11-16 21:07:00 +08:00
Revone dd2701dab7 style: reformated codebase 2023-11-16 10:14:14 +08:00
Revone bac0964ac2 fix: Implemented a high-performance HashMap comparable to the native Map. All test cases are standardized using 'it' instead of 'test'. Enabled tsconfig's sourceMap configuration for correct line numbers in IDE testing. 2023-11-15 23:17:55 +08:00
Revone d71a1eb2bc fix: Removed unused enums. style: Beautified text color output of the performance report generator console. 2023-11-14 21:41:20 +08:00
Revone 65af9d6f20 docs: Added development umd module 2023-11-13 22:30:59 +08:00
Revone 649101ebe0 release: v 1.43.1 2023-11-13 00:03:42 +08:00
Revone c985317259 test: Added a switch to control whether to test the performance of competitors. 2023-11-11 09:59:11 +08:00
Revone 7bcb0ba843 test: Competitor Performance Comparison Test 2023-11-11 00:17:50 +08:00
Revone cffe084c2b docs: README.md modified 2023-11-10 23:50:57 +08:00
Revone a1cfac93da test: Testing coverage has increased to 91.2%. 2023-11-10 23:44:24 +08:00
Revone fd416c5d6e docs: Almost all methods of data structures have added comments on time and space complexity. 2023-11-10 16:24:24 +08:00
Revone d682a609f9 release: v1.42.8 2023-11-09 20:48:06 +08:00
Revone c2c7011e15 refactor: Unified API parameters, streamline syntax, exclude methods already present in the parent class. 2023-11-09 20:25:54 +08:00
Revone 28207b6d45 perf: Unified all APIs, all parameters that accept node types can also accept node keys as parameters. 2023-11-09 17:47:02 +08:00
Revone 000efa749d docs: Conventional Commits of CONTRIBUTING.md, Built-in classic algorithms enriched 2023-11-08 20:25:02 +08:00
Revone 50d1a168e7 [perf] renamed tree-multiset to tree-multimap 2023-11-08 09:26:43 +08:00
Revone 996fd128ed [binary-tree] Perfectly solved the null problem, in BST, AVLTree, and TreeMultiset, only 'undefined' is used as the empty node. 2023-11-07 12:26:16 +08:00
Revone be38422de9 [test] null should be ignored in travesal method in BST 2023-11-06 19:36:09 +08:00
Revone 25b9e1e9e4 [graph] To facilitate users who are not familiar with the Tarjan algorithm, provide the following methods: getCycles, getSCCs, getBridges, getCutVertexes, getDFNMap, and getLowMap. 2023-11-06 14:47:00 +08:00
Revone f15792c529 [project] tables optimization of README.md 2023-11-06 11:01:32 +08:00
Revone 8acd2e3c9b [docs] Remove the first column from the data structure comparison table in various programming languages. 2023-11-05 21:42:35 +08:00
Revone d6b394446a [binary-tree] All traversal methods offer an includeNull parameter to support the output of null nodes. 2023-11-05 21:19:59 +08:00
Revone 62e55b84bd [graph] The getAllPathsBetween method in the [graph] provides a 'limit' parameter to control this exponential time complexity method from entering into a deadlock state. The getMinPathsBetween method, by default, calls the Dijkstra method to avoid invoking the excessively high time complexity method, getAllPathsBetween. 2023-11-04 21:23:02 +08:00
Revone 5af93dda72 [benchmark] Determine the order of magnitude for most performance tests. Report metric reductions. 2023-11-04 17:28:52 +08:00
Revone 025a90a145 [graph] use 'Set' in dfs instead of 'Map' 2023-11-04 15:47:24 +08:00
Revone 0ecc163944 [project] Replace the performance test report in README.md every time instead of inserting incrementally. 2023-11-04 10:19:09 +08:00
Revone 24a961f692 [BST, AVL] The 'get' method follows the binary search of a BST for bug fixes during queries. [Project] The editor uses 'tsconfig.json' for code checking to be compatible with the 'test' directory, but compiles using their respective configuration files. 2023-11-04 10:00:51 +08:00
Revone 0ab8054f52 [pkg] v1.41.5 published 2023-11-04 01:35:21 +08:00
Revone bd2ecc5699 [benchmark] enriched the utils of performance test. enriched the performance test cases 2023-11-04 01:21:30 +08:00
Revone 4614773413 [binary-tree] Merge the operation of modifying the value into the insert query process to improve performance. [benchmark] Enhance performance test cases and move existing performance tests from unit tests to the 'performance' section. Improve the benchmark test report. Refine the logic of the report generator. 2023-11-02 21:38:10 +08:00
Revone c11cc4527b [graph] The removal method in the graph data structure is standardized to 'delete' 2023-10-28 15:58:48 +08:00
Revone f90afe0b57 [binary-tree] The binary tree's BFS and level-order traversal results should be the same. However, for convenience, we provide an additional method called listLevels to display traversal results in levels. 2023-10-27 22:30:52 +08:00
Revone 31c228668e [optimization] allow all list datatype delete methods to accept null as an input argument 2023-10-26 16:45:08 +08:00
Revone a6329163f7 1. No need for dfsIterative; integrate it directly into the dfs method. 2. Allow for public configuration of setLoopType. 3. Replace subTreeAdd with subTreeForeach for improved clarity and flexibility; provide a callback for enhanced versatility. 4. Standardize the naming of certain methods and parameters. 2023-10-21 20:03:54 +08:00
Revone ba9cd51a6a [project] enrich the scripts of ci 2023-10-19 09:21:00 +08:00
Revone b10400e9c5 [pkg] v1.36.3 published 2023-10-17 23:52:24 +08:00
Revone e96a4be5ea [readme] Move all the badges to the top 2023-10-10 22:18:39 +08:00
Revone f08819eb83 [core] In order to adhere to best practices, rename the DFS method and the BFS method as dfs and bfs. 2023-10-10 22:15:01 +08:00
Revone 0c5df67215 [readme] badages updated 2023-10-10 17:22:18 +08:00
Revone 092ac731b4 [pkg] v1.33.8 published 2023-10-05 10:37:42 +08:00
Revone 4365e5959f [README] updated 2023-09-29 17:45:36 +08:00
Revone 1687f3cde8 [core] HashTable, HashMap, SkipList implemented 2023-09-29 17:37:30 +08:00
Revone 17e0fcb061 [pkg] v1.33.6 published 2023-09-27 11:56:58 +08:00
Revone 6b7cba5966 [pkg] ci optimization 2023-09-27 11:15:38 +08:00
Revone 9140567d73 [pkg] ready to publish v1.33.2 2023-09-26 17:09:28 +08:00
Revone bd25485555 [project] generic naming standardized 2023-09-26 13:50:40 +08:00
Revone 89451d2c03 [README] data structures comparation 2023-09-26 12:49:33 +08:00
Revone 80675e2bbb [BinaryTree] leftSum feature eliminated 2023-09-25 17:18:14 +08:00
Revone 96621c72e5 [RBTree] first commit of RBTree. [HashTable] first commit 2023-09-25 15:48:24 +08:00
Revone 45ac7d8d5f [pkg] keywords optimization 2023-09-24 21:31:09 +08:00
Revone c5266267a5 [README] simplified 2023-09-22 11:24:33 +08:00
Revone ae69def973 [README] ready to modify 2023-09-22 11:20:33 +08:00
Revone 474f4315f7 [badges] coverage badges removed 2023-09-22 10:45:56 +08:00
Revone 25c88edcd6 [README] badges added. 2023-09-22 10:40:12 +08:00
Revone b4643625a0 test coverage report supported. Code quality enhanced and support multiple environments such as ES6 (ESModule), ES5 (CommonJS), and a single file for both browser and Node.js environments (UMD). Supported for source maps. CODE-OF-CONDUCT.md, COMMANDS.md, SECURITY.md, .gitattributes added. 2023-09-22 00:53:34 +08:00
Revone 95b44f439b [project] ESLint applied 2023-09-20 11:39:24 +08:00
Revone 70f439da13 v1.3.3 published 2023-09-19 17:00:25 +08:00
Revone 55704871b6 v1.3.1 published, new Queue implemented from SinglyLinkedList, and ArrayQueue implemented from Array 2023-09-18 22:04:39 +08:00
Revone 3d804cf13b vivid-algorithm 2023-09-12 11:43:25 +08:00
Revone 450f051138 Optimize the overall codebase and directory structure. 2023-09-12 11:10:09 +08:00
Revone b0774bee5b [core] remove all the unnecessary files and directories when publishing the npm package 2023-09-09 23:49:53 +08:00
Revone da68f2f97c v1.21.0 publish ready 2023-09-07 22:32:48 +08:00
Revone c7e1887b96 v1.21.0 published 2023-09-07 22:28:00 +08:00
Revone bd71edc536 images removed, heap docs revised 2023-08-31 00:50:23 +08:00
Revone dccf2986f0 Compatible with standalone data structure libraries. 2023-08-30 14:27:18 +08:00
Revone ea24cd47fd v1.19.0 published 2023-08-29 20:52:15 +08:00
Revone 87b7e420b5 remove createNode function from every Binary Tree Nodes 2023-08-28 20:04:43 +08:00
Revone 61f465fe99 Added a method for data type validation through type conversion to Zod schemas. 2023-08-28 18:43:09 +08:00
Revone de5a001b6a The Graph's API has been optimized. 2023-08-28 11:15:04 +08:00