Revone
|
4fa0816223
|
[core] Shared Comparator and DFSOrderPattern among multiple data structures. ESLint config improved
|
2023-10-20 11:43:26 +08:00 |
|
Revone
|
2953ec61af
|
[git] Overwrite the rbtree branch based on the old version of the main branch
|
2023-10-19 09:42:24 +08:00 |
|
zrwusa
|
a0c9c17345
|
Merge branch 'main' into rbtree
|
2023-10-19 09:29:01 +08:00 |
|
Revone
|
47fcfabae7
|
[binarytree] modified the getDepth method to adhere to the proper definition of "tree depth."
|
2023-10-18 18:28:36 +08:00 |
|
Revone
|
9764f2a5c6
|
[binary-tree, graph] In order to optimize the design of Binary Trees, unnecessary abstract classe removed, while enforcing method constraints between base classes and subclasses through interfaces. For Graph, it is necessary to use an abstract class as the base class, and interface constraints should be applied. Any data structures that are not within the scope of the plan deleted.
|
2023-10-17 21:06:41 +08:00 |
|
Revone
|
727cc87ca5
|
[BinaryTree, Heap] In abstract classes, only retain abstract methods. Replace the generic 'T' with 'E' in Heap and PriorityQueue
|
2023-10-16 20:34:22 +08:00 |
|
Revone
|
836927ab82
|
[core] To compile a CommonJS module in the "dist" directory into ES6 code. Fixing some missing bugs in overloaded methods.
|
2023-10-11 18:44:59 +08:00 |
|
Revone
|
8b9ef598e5
|
[binary-tree] To adhere to best practices, rename certain methods and replace optional parameters with default values.
|
2023-10-10 23:13:52 +08:00 |
|
Revone
|
31aa92e761
|
[binary-tree] Replace optional parameters with default values
|
2023-10-10 23:01:13 +08:00 |
|
Revone
|
8b8e781607
|
[core] Rename those legacy IDs that have not been updated to 'key'
|
2023-10-10 22:39:31 +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
|
ed1ecf541f
|
[binary-tree] unnecessary geters and setters removed
|
2023-10-10 21:56:55 +08:00 |
|
Revone
|
3bffa7320c
|
[core] rename id to key
|
2023-10-10 20:13:47 +08:00 |
|
Revone
|
45c49c99bf
|
[core] renamed id to key
|
2023-10-10 19:55:52 +08:00 |
|
Revone
|
2bdfd79b9f
|
[rbtree] implemented, but with bugs
|
2023-10-10 10:28:23 +08:00 |
|
Revone
|
8659e1d09d
|
[pkg] code quality improved to 99%
|
2023-10-06 20:51:55 +08:00 |
|
Revone
|
1687f3cde8
|
[core] HashTable, HashMap, SkipList implemented
|
2023-09-29 17:37:30 +08:00 |
|
Revone
|
bd25485555
|
[project] generic naming standardized
|
2023-09-26 13:50:40 +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
|
ea8f993a4a
|
[prettier] bracket spacing false
|
2023-09-22 10:43:16 +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
|
b263262a46
|
[project] github workflow added. eslint added. formating code by using prettier.
|
2023-09-21 12:52:17 +08:00 |
|
Revone
|
95b44f439b
|
[project] ESLint applied
|
2023-09-20 11:39:24 +08:00 |
|
Revone
|
80570451de
|
[TreeMultiset], remove unnecessary parameters and adjust the 'addMany' method.
|
2023-09-19 23:10:09 +08:00 |
|
Revone
|
6f3baa9c79
|
[BST] BST has added an 'addMany' method, supports batch insertion using binary splitting, supports both recursive and iterative approaches.
|
2023-09-19 22:47:58 +08:00 |
|
Revone
|
0abd5eced7
|
Avoid using the Array.unshift method to slightly enhance AVLTree insertion performance.
|
2023-09-19 17:03:53 +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
|
773c970667
|
Establish a unified code editor encoding standard by .editorconfig file.
|
2023-09-12 11:15:20 +08:00 |
|
Revone
|
450f051138
|
Optimize the overall codebase and directory structure.
|
2023-09-12 11:10:09 +08:00 |
|
Revone
|
26ab0be17b
|
[BinaryTree] isMergeDuplicatedNodeById removed, [MapGraph] MapGraph added
|
2023-09-07 21:00:22 +08:00 |
|
Revone
|
407c3b104a
|
Tidying up the code and identifying any further requirements that need to be marked as TODO.
|
2023-08-31 22:25:41 +08:00 |
|
Revone
|
2d1010b352
|
Rework the add, addMany, and fill methods of AbstractBinaryTree. Refactor the AddMany method of TreeMultiset. Fix the bug in TreeMultiset where all Node counts become 1 after calling the perfectBalance method. Remove the unnecessary configuration of autoIncrementId.
|
2023-08-31 20:02:31 +08:00 |
|
Revone
|
bd71edc536
|
images removed, heap docs revised
|
2023-08-31 00:50:23 +08:00 |
|
Revone
|
df2f940189
|
Redesigned for greater coherence, TreeMultiset now inherits from AVLTree, with the 'count' member variable relocated to TreeMultiset. Revisions to the documentation have been made accordingly.
|
2023-08-29 20:29:53 +08:00 |
|
Revone
|
1a893cfd20
|
After extracting the count member variable to TreeMultiset, the initial test has passed successfully.
|
2023-08-29 17:29:57 +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
|
363c66490a
|
Modify all methods of BinaryTreeNode to make the val parameter optional.
|
2023-08-28 08:40:31 +08:00 |
|
Revone
|
8ac4e0e7c4
|
Standardize methods for all BinaryTrees, enabling support for both TreeNode parameters and TreeNodeId as arguments.
|
2023-08-27 21:14:18 +08:00 |
|
Revone
|
d29ff07f40
|
Swap the positions of val and id to enhance the intuitiveness of the API. Revise the design of familyPosition in AbstractBinaryTree such that the previous assignment approach is replaced with a real-time retrieval method. Standardize the BST.remove method with the AbstractBinaryTree.remove method. Eliminate the redundant attribute name from TreeNode.
|
2023-08-26 10:24:31 +08:00 |
|
Revone
|
8db8976503
|
All the RecursiveNodes renamed as NodeNested pattern. TreeMultiSet extended from AVLTree
|
2023-08-24 11:13:28 +08:00 |
|
Revone
|
2ea57d26ae
|
For the sake of API simplicity, if val is not provided, id can be used in its place.
|
2023-08-24 00:01:44 +08:00 |
|
Revone
|
6bc894c5c1
|
Organized all the interfaces. Implemented the removeEdgeSrcToDest method for the Graph class.
|
2023-08-23 23:03:19 +08:00 |
|
Revone
|
860d18d222
|
"AbstractBinaryTree" has been extracted from "BinaryTree." TreeMultiSet has been optimized.
|
2023-08-23 13:15:30 +08:00 |
|
Revone
|
849e3c6bca
|
Test and debug the bug related to BinaryTreeNode's handling of object types.Revise the design of the constructor to incorporate abstract methods for enforcing the requirement that subclasses must implement the _createVertex and _createEdge methods.
|
2023-08-23 11:39:01 +08:00 |
|
Revone
|
60e08d3ac5
|
Successfully implemented recursive type inference for the BinaryTreeNode type by passing the node constructor through the constructor, effectively addressing the type inconsistency caused by invoking parent class methods after inheritance.
|
2023-08-22 22:50:16 +08:00 |
|
Revone
|
1b441f1d47
|
By constraining the necessity to implement the _createNode method, we ensure that the node types are correct within the subclass. The current design of the Graph needs further optimization.
|
2023-08-22 08:58:42 +08:00 |
|
Revone
|
c1b5969c51
|
Support TypeScript v5.1.6. Standardize all getters and setters. Adjust access permissions for accessors, set access permissions for protected or private member variables, and indicate them using the private identifier "_".
|
2023-08-21 16:17:01 +08:00 |
|