@@ -20,36 +20,34 @@ describe('Tree rotations', () => {
2020 } ) ;
2121
2222 describe ( '#leftRotation (LL Rotation)' , ( ) => {
23- it ( 'should rotate left with root ( LL Rotation) ' , ( ) => {
24- // 1
25- // \
26- // 2*
27- // \
28- // 3
29- // \
30- // 4
23+ it ( 'basic LL rotation ' , ( ) => {
24+ /*
25+ * 1* 2*
26+ * \ / \
27+ * 2 ---| left-rotation(1) |--> 1 3
28+ * \
29+ * 3
30+ */
3131 n1 . right = n2 ;
3232 n2 . right = n3 ;
33- n3 . right = n4 ;
3433
35- const newParent = leftRotation ( n2 ) ;
36-
37- expect ( newParent ) . toBe ( n3 ) ;
34+ const newParent = leftRotation ( n1 ) ;
35+ expect ( newParent . value ) . toBe ( 2 ) ;
3836 expect ( n1 . toValues ( ) ) . toMatchObject ( {
39- value : 1 , left : undefined , right : 3 , parent : null ,
37+ value : 1 , left : undefined , right : undefined , parent : 2 ,
4038 } ) ;
4139 expect ( n2 . toValues ( ) ) . toMatchObject ( {
42- value : 2 , left : undefined , right : undefined , parent : 3 ,
40+ value : 2 , left : 1 , right : 3 , parent : null ,
4341 } ) ;
4442 expect ( n3 . toValues ( ) ) . toMatchObject ( {
45- value : 3 , left : 2 , right : 4 , parent : 1 ,
43+ value : 3 , left : undefined , right : undefined , parent : 2 ,
4644 } ) ;
4745 } ) ;
4846
49- it ( 'should rotate left with root' , ( ) => {
50- // 1*
47+ it ( 'should rotate left with root (LL Rotation) ' , ( ) => {
48+ // 1
5149 // \
52- // 2
50+ // 2*
5351 // \
5452 // 3
5553 // \
@@ -58,17 +56,17 @@ describe('Tree rotations', () => {
5856 n2 . right = n3 ;
5957 n3 . right = n4 ;
6058
61- const newParent = leftRotation ( n1 ) ;
59+ const newParent = leftRotation ( n2 ) ;
6260
63- expect ( newParent ) . toBe ( n2 ) ;
61+ expect ( newParent ) . toBe ( n3 ) ;
6462 expect ( n1 . toValues ( ) ) . toMatchObject ( {
65- value : 1 , left : undefined , right : undefined , parent : 2 ,
63+ value : 1 , left : undefined , right : 3 , parent : null ,
6664 } ) ;
6765 expect ( n2 . toValues ( ) ) . toMatchObject ( {
68- value : 2 , left : 1 , right : 3 , parent : null ,
66+ value : 2 , left : undefined , right : undefined , parent : 3 ,
6967 } ) ;
7068 expect ( n3 . toValues ( ) ) . toMatchObject ( {
71- value : 3 , left : undefined , right : 4 , parent : 2 ,
69+ value : 3 , left : 2 , right : 4 , parent : 1 ,
7270 } ) ;
7371 } ) ;
7472
0 commit comments