From 7bcbffc344cba45459b265707ea1cd6d62c192ef Mon Sep 17 00:00:00 2001 From: Jidong Xiao Date: Thu, 27 Mar 2025 21:22:45 -0400 Subject: [PATCH] adding time complexity --- lectures/21_trees_IV/README.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/lectures/21_trees_IV/README.md b/lectures/21_trees_IV/README.md index 5f8816c..03428dd 100644 --- a/lectures/21_trees_IV/README.md +++ b/lectures/21_trees_IV/README.md @@ -80,9 +80,18 @@ $ ./a.out Inorder Traversal using Morris Traversal: 4 2 6 5 7 1 3 9 8 ``` +### Time and Space Complexity + +- Time Complexity: O(N) (each node is visited at most twice) + +- Space Complexity: O(1) (no extra space used except for modifying pointers) ## 21.3 Morris Traversal - Pre Order +To perform preorder traversal: + +Print the node before going left instead of after restoring links. + ```cpp void preorderTraversal(TreeNode* root) { TreeNode *current=root; @@ -121,6 +130,12 @@ Preorder Traversal using Morris Traversal: 1 2 4 5 6 7 3 8 9 ``` +### Time and Space Complexity + +- Time Complexity: O(N) (each node is visited at most twice) + +- Space Complexity: O(1) (no extra space used except for modifying pointers) + ## 21.4 Morris Traversal - Post Order ```cpp