@@ -86,6 +86,7 @@ int main() {
8686 head = Delete (head, 0 );
8787 head = Delete (head, -2 );
8888 Node *tail = Tail (head);
89+
8990 assert (Find (head, 0 )->val == 4 );
9091 assert (Find (head, 1 )->val == 3 );
9192 assert (Find (head, 2 )->val == 2 );
@@ -98,5 +99,25 @@ int main() {
9899 assert (FindBack (tail, 3 )->val == 3 );
99100 assert (FindBack (tail, 4 )->val == 4 );
100101 assert (FindBack (tail, 4 )->prev == nullptr );
102+
103+ assert (Find (head, 0 )->next ->val == 3 );
104+ assert (Find (head, 1 )->next ->next ->val == 1 );
105+ assert (Find (head, 2 )->prev ->val == 3 );
106+ assert (Find (head, 4 )->next == nullptr );
107+ assert (FindBack (tail, 1 )->prev ->prev ->val == 3 );
108+
109+ Find (head, 0 )->next ->val = 30 ;
110+ assert (Find (head, 1 )->val == 30 );
111+ Find (head, 1 )->next ->val = Find (head, 0 )->val + Find (head, 3 )->val ;
112+ assert (Find (head, 2 )->val == 4 + 1 );
113+
114+ int sum = Find (head, 0 )->val + Find (head, 1 )->val + Find (head, 2 )->val +
115+ Find (head, 3 )->val + Find (head, 4 )->val ;
116+ assert (sum == 4 + 30 + 5 + 1 + -1 );
117+
118+ assert (Find (head, 0 )->val + FindBack (tail, 0 )->val == 4 + -1 );
119+ assert (Find (head, 2 )->next ->val == FindBack (tail, 1 )->val );
120+ assert (Find (head, 0 )->prev == FindBack (tail, 4 )->prev );
121+
101122 return 0 ;
102123}
0 commit comments