Commit graph

17 commits

Author SHA1 Message Date
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
d3f5dd4a9e edge1.data has type problem. After the uniform design, the generics of containers (DirectedGraph, BST) are based on the type of value. However, this design has a drawback: when I attempt to inherit from the Vertex or BSTNode classes, the types of the results obtained by all methods are those of the parent class. 2023-08-22 13:30:22 +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
Revone
2c82e31a29 Optimize the insertAfter method of SinglyLinkedList, insertAfter, insertBefore, and delete methods of DoublyLinkedList to directly add an element after a given node's reference without the need for traversal. And conducted performance test.
Modify the insertBefore and delete methods of SinglyLinkedList to align their method APIs with those of DoublyLinkedList.
2023-08-20 18:52:57 +08:00
Revone
dcec645f05 Integration test for SinglyLinkedList and DoublyLinkedList completed 2023-08-20 00:53:18 +08:00
Revone
b9dba24bf3 re-implemented the SinglyLinkedList and DoublyLinkedList, and completed the unit tests. 2023-08-20 00:12:30 +08:00
Revone
91c47c28c2 SinglyLinkedList reimplemented and tested 2023-08-19 23:12:16 +08:00
Revone
97b0072ea1 Unit test cases for standardized PriorityQueue and Heap. 2023-08-19 22:25:06 +08:00
Revone
694ca46893 bug fixed of method isValid for PriorityQueue and Heap, test cases enriched for PriorityQueue and Heap, SpecifyOptional type added 2023-08-18 22:39:45 +08:00
Revone
5db5561999 Heap test cases added 2023-08-18 13:40:08 +08:00
Revone
07231cd4c4 v1.15.2 published 2023-08-17 00:50:14 +08:00
Revone
2d07c5e5af update Typescript version to 4.9.5, DirectedGraph tests completed, Remedial measures have been taken in TypeScript versions 5.0 and above to enforce consistent access modifiers for getters and setters., annotation content has been enriched. 2023-08-16 22:44:38 +08:00
Revone
4da59257e8 Name the addition method as "add" within the unified API 2023-08-14 20:39:10 +08:00
Revone
8bdc3218db Name the addition method as "add" within the unified API 2023-08-14 19:43:52 +08:00
Revone
d5e64f8127 api docs deploied, graph basic test completed 2023-08-14 08:47:26 +08:00