adding time complexity

This commit is contained in:
Jidong Xiao
2025-03-27 21:22:45 -04:00
committed by JamesFlare
parent 2e1604f3bd
commit 7bcbffc344

View File

@@ -80,9 +80,18 @@ $ ./a.out
Inorder Traversal using Morris Traversal: Inorder Traversal using Morris Traversal:
4 2 6 5 7 1 3 9 8 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 ## 21.3 Morris Traversal - Pre Order
To perform preorder traversal:
Print the node before going left instead of after restoring links.
```cpp ```cpp
void preorderTraversal(TreeNode* root) { void preorderTraversal(TreeNode* root) {
TreeNode *current=root; TreeNode *current=root;
@@ -121,6 +130,12 @@ Preorder Traversal using Morris Traversal:
1 2 4 5 6 7 3 8 9 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 ## 21.4 Morris Traversal - Post Order
```cpp ```cpp