File tree Expand file tree Collapse file tree 1 file changed +18
-0
lines changed Expand file tree Collapse file tree 1 file changed +18
-0
lines changed Original file line number Diff line number Diff line change @@ -27,6 +27,24 @@ export class MyLinkedList<T = number> {
27
27
insert_First ( node : DoublyLinkedList < T > ) : void {
28
28
this . insert_After ( this . #freq_list_head, node ) ;
29
29
}
30
+ append_last ( node : DoublyLinkedList < T > ) : void {
31
+ this . insert_Before ( this . #freq_list_tail, node ) ;
32
+ }
33
+ insert_Before (
34
+ next_node : DoublyLinkedList < T > ,
35
+ new_node : DoublyLinkedList < T >
36
+ ) : void {
37
+ const next = next_node ;
38
+ const prev = next_node . prev ;
39
+ if ( prev && next ) {
40
+ prev . next = new_node ;
41
+ new_node . prev = prev ;
42
+ new_node . next = next ;
43
+ next . prev = new_node ;
44
+ } else {
45
+ throw Error ( "next prev_node not in list" ) ;
46
+ }
47
+ }
30
48
remove_node ( node : DoublyLinkedList < T > ) : void {
31
49
const prev = node . prev ;
32
50
const next = node . next ;
You can’t perform that action at this time.
0 commit comments