diff --git a/animations/trees/morris/morris_in_order.html b/animations/trees/morris/morris_in_order.html index c24d778..c44be7f 100644 --- a/animations/trees/morris/morris_in_order.html +++ b/animations/trees/morris/morris_in_order.html @@ -559,52 +559,63 @@ break; case 3: no_rect.fill('yellow'); + layer.draw(); break; case 4: left_subtree_null.fill('white'); no_rect.fill('white'); find_inorder_predecessor.fill('yellow'); stage.find('#node_2')[0].fill('lime'); + layer.draw(); break; case 5: stage.find('#node_2')[0].fill('white'); stage.find('#node_5')[0].fill('lime'); + layer.draw(); break; case 6: stage.find('#node_5')[0].fill('white'); stage.find('#node_7')[0].fill('lime'); + layer.draw(); break; case 7: find_inorder_predecessor.fill('white'); where_right.fill('yellow'); + layer.draw(); break; case 8: null_rect.fill('yellow'); + layer.draw(); break; case 9: where_right.fill('white'); null_rect.fill('white'); set_current.fill('yellow'); + layer.draw(); break; case 10: node7to1.show(); + layer.draw(); break; case 11: stage.find('#node_1')[0].fill('white'); stage.find('#node_2')[0].fill('yellow'); + layer.draw(); break; case 12: set_current.fill('white'); left_subtree_null.fill('yellow'); + layer.draw(); break; case 13: no_rect.fill('yellow'); + layer.draw(); break; case 14: @@ -613,355 +624,442 @@ find_inorder_predecessor.fill('yellow'); stage.find('#node_7')[0].fill('white'); stage.find('#node_4')[0].fill('lime'); + layer.draw(); break; case 15: find_inorder_predecessor.fill('white'); where_right.fill('yellow'); + layer.draw(); break; case 16: null_rect.fill('yellow'); + layer.draw(); break; case 17: where_right.fill('white'); null_rect.fill('white'); set_current.fill('yellow'); + layer.draw(); break; case 18: node4to2.show(); + layer.draw(); break; case 19: stage.find('#node_2')[0].fill('white'); stage.find('#node_4')[0].fill('yellow'); + layer.draw(); break; case 20: set_current.fill('white'); left_subtree_null.fill('yellow'); + layer.draw(); break; case 21: yes_rect.fill('yellow'); + layer.draw(); break; case 22: left_subtree_null.fill('white'); yes_rect.fill('white'); print_move_right.fill('yellow'); + layer.draw(); break; case 23: console_text.text('Console:\n4'); + layer.draw(); break; case 24: stage.find('#node_4')[0].fill('white'); stage.find('#node_2')[0].fill('yellow'); + layer.draw(); break; case 25: print_move_right.fill('white'); left_subtree_null.fill('yellow'); + layer.draw(); break; case 26: no_rect.fill('yellow'); + layer.draw(); break; case 27: left_subtree_null.fill('white'); no_rect.fill('white'); find_inorder_predecessor.fill('yellow'); + layer.draw(); break; case 28: stage.find('#node_4')[0].fill('lime'); + layer.draw(); break; case 29: find_inorder_predecessor.fill('white'); where_right.fill('yellow'); + layer.draw(); break; case 30: current_rect.fill('yellow'); + layer.draw(); break; case 31: where_right.fill('white'); current_rect.fill('white'); set_null.fill('yellow'); + layer.draw(); break; case 32: node4to2.hide(); console_text.text('Console:\n4 2'); + layer.draw(); break; case 33: stage.find('#node_4')[0].fill('white'); stage.find('#node_2')[0].fill('white'); stage.find('#node_5')[0].fill('yellow'); + layer.draw(); break; case 34: set_null.fill('white'); left_subtree_null.fill('yellow'); + layer.draw(); break; case 35: no_rect.fill('yellow'); + layer.draw(); break; case 36: left_subtree_null.fill('white'); no_rect.fill('white'); find_inorder_predecessor.fill('yellow'); stage.find('#node_6')[0].fill('lime'); + layer.draw(); break; case 37: find_inorder_predecessor.fill('white'); where_right.fill('yellow'); + layer.draw(); break; case 38: null_rect.fill('yellow'); + layer.draw(); break; case 39: where_right.fill('white'); null_rect.fill('white'); set_current.fill('yellow'); + layer.draw(); break; case 40: node6to5.show(); + layer.draw(); break; case 41: stage.find('#node_5')[0].fill('white'); stage.find('#node_6')[0].fill('yellow'); + layer.draw(); break; case 42: set_current.fill('white'); left_subtree_null.fill('yellow'); + layer.draw(); break; case 43: yes_rect.fill('yellow'); + layer.draw(); break; case 44: left_subtree_null.fill('white'); yes_rect.fill('white'); print_move_right.fill('yellow'); + layer.draw(); break; case 45: console_text.text('Console:\n4 2 6'); + layer.draw(); break; case 46: stage.find('#node_6')[0].fill('white'); stage.find('#node_5')[0].fill('yellow'); + layer.draw(); break; case 47: print_move_right.fill('white'); left_subtree_null.fill('yellow'); + layer.draw(); break; case 48: no_rect.fill('yellow'); + layer.draw(); break; case 49: left_subtree_null.fill('white'); no_rect.fill('white'); find_inorder_predecessor.fill('yellow'); + layer.draw(); break; case 50: stage.find('#node_6')[0].fill('lime'); + layer.draw(); break; case 51: find_inorder_predecessor.fill('white'); where_right.fill('yellow'); + layer.draw(); break; case 52: current_rect.fill('yellow'); + layer.draw(); break; case 53: where_right.fill('white'); current_rect.fill('white'); set_null.fill('yellow'); + layer.draw(); break; case 54: node6to5.hide(); console_text.text('Console:\n4 2 6 5'); + layer.draw(); break; case 55: stage.find('#node_6')[0].fill('white'); stage.find('#node_5')[0].fill('white'); stage.find('#node_7')[0].fill('yellow'); + layer.draw(); break; case 56: set_null.fill('white'); left_subtree_null.fill('yellow'); + layer.draw(); break; case 57: yes_rect.fill('yellow'); + layer.draw(); break; case 58: left_subtree_null.fill('white'); yes_rect.fill('white'); print_move_right.fill('yellow'); + layer.draw(); break; case 59: console_text.text('Console:\n4 2 6 5 7'); + layer.draw(); break; case 60: stage.find('#node_7')[0].fill('white'); stage.find('#node_1')[0].fill('yellow'); + layer.draw(); break; case 61: print_move_right.fill('white'); left_subtree_null.fill('yellow'); + layer.draw(); break; case 62: no_rect.fill('yellow'); + layer.draw(); break; case 63: left_subtree_null.fill('white'); no_rect.fill('white'); find_inorder_predecessor.fill('yellow'); + layer.draw(); break; case 64: stage.find('#node_2')[0].fill('lime'); + layer.draw(); break; case 65: stage.find('#node_2')[0].fill('white'); stage.find('#node_5')[0].fill('lime'); + layer.draw(); break; case 66: stage.find('#node_5')[0].fill('white'); stage.find('#node_7')[0].fill('lime'); + layer.draw(); break; case 67: find_inorder_predecessor.fill('white'); where_right.fill('yellow'); + layer.draw(); break; case 68: current_rect.fill('yellow'); + layer.draw(); case 69: where_right.fill('white'); current_rect.fill('white'); set_null.fill('yellow'); + layer.draw(); break; case 70: console_text.text('Console:\n4 2 6 5 7 1'); node7to1.hide(); + layer.draw(); break; case 71: stage.find('#node_7')[0].fill('white'); stage.find('#node_1')[0].fill('white'); stage.find('#node_3')[0].fill('yellow'); + layer.draw(); break; case 72: set_null.fill('white'); left_subtree_null.fill('yellow'); + layer.draw(); break; case 73: yes_rect.fill('yellow'); + layer.draw(); break; case 74: left_subtree_null.fill('white'); yes_rect.fill('white'); print_move_right.fill('yellow'); + layer.draw(); break; case 75: console_text.text('Console:\n4 2 6 5 7 1 3'); + layer.draw(); break; case 76: stage.find('#node_3')[0].fill('white'); stage.find('#node_8')[0].fill('yellow'); + layer.draw(); break; case 77: print_move_right.fill('white'); left_subtree_null.fill('yellow'); + layer.draw(); break; case 78: no_rect.fill('yellow'); + layer.draw(); break; case 79: left_subtree_null.fill('white'); no_rect.fill('white'); find_inorder_predecessor.fill('yellow'); + layer.draw(); break; case 80: stage.find('#node_9')[0].fill('lime'); + layer.draw(); break; case 81: find_inorder_predecessor.fill('white'); where_right.fill('yellow'); + layer.draw(); break; case 82: null_rect.fill('yellow'); + layer.draw(); break; case 83: where_right.fill('white'); null_rect.fill('white'); set_current.fill('yellow'); + layer.draw(); break; case 84: node9to8.show(); + layer.draw(); break; case 85: stage.find('#node_8')[0].fill('white'); stage.find('#node_9')[0].fill('yellow'); + layer.draw(); break; case 86: set_current.fill('white'); left_subtree_null.fill('yellow'); + layer.draw(); break; case 87: yes_rect.fill('yellow'); + layer.draw(); break; case 88: left_subtree_null.fill('white'); yes_rect.fill('white'); + layer.draw(); break; case 89: print_move_right.fill('yellow'); + layer.draw(); break; case 90: console_text.text('Console:\n4 2 6 5 7 1 3 9'); + layer.draw(); break; case 91: stage.find('#node_8')[0].fill('yellow'); stage.find('#node_9')[0].fill('white'); + layer.draw(); break; case 92: print_move_right.fill('white'); left_subtree_null.fill('yellow'); + layer.draw(); break; case 93: no_rect.fill('yellow'); + layer.draw(); break; case 94: left_subtree_null.fill('white'); no_rect.fill('white'); find_inorder_predecessor.fill('yellow'); + layer.draw(); break; case 95: stage.find('#node_9')[0].fill('lime'); + layer.draw(); break; case 96: find_inorder_predecessor.fill('white'); where_right.fill('yellow'); + layer.draw(); break; case 97: current_rect.fill('yellow'); + layer.draw(); break; case 98: where_right.fill('white'); current_rect.fill('white'); set_null.fill('yellow'); + layer.draw(); break; case 99: console_text.text('Console:\n4 2 6 5 7 1 3 9 8'); + layer.draw(); break; case 100: node9to8.hide(); stage.find('#node_8')[0].fill('white'); stage.find('#node_9')[0].fill('white'); + layer.draw(); break; case 101: start_from_root.fill('red'); @@ -971,6 +1069,7 @@ where_right.fill('red'); set_current.fill('red'); set_null.fill('red'); + layer.draw(); break; @@ -979,7 +1078,6 @@ }; - //while (step < )