Step-By-Step Directions From a Binary Tree Node to Another - Problem

You are given the root of a binary tree with n nodes. Each node is uniquely assigned a value from 1 to n. You are also given an integer startValue representing the value of the start node s, and a different integer destValue representing the value of the destination node t.

Find the shortest path starting from node s and ending at node t. Generate step-by-step directions of such path as a string consisting of only the uppercase letters 'L', 'R', and 'U'. Each letter indicates a specific direction:

  • 'L' means to go from a node to its left child node.
  • 'R' means to go from a node to its right child node.
  • 'U' means to go from a node to its parent node.

Return the step-by-step directions of the shortest path from node s to node t.

Input & Output

Example 1 — Basic Tree Navigation
$ Input: root = [5,1,2,3,null,6,4], startValue = 3, destValue = 6
Output: UUUL
💡 Note: Start at node 3, go up twice to reach node 5 (root), then down left to node 1, then down right to reach node 6. Path: 3→1→5→1→6 gives directions UUUL.
Example 2 — Sibling Nodes
$ Input: root = [2,1,3], startValue = 3, destValue = 1
Output: UL
💡 Note: Start at node 3 (right child), go up to root node 2, then left to node 1. Simple sibling traversal: 3→2→1 gives UL.
Example 3 — Same Subtree
$ Input: root = [5,1,2,3,null,6,4], startValue = 3, destValue = 4
Output: UURR
💡 Note: From node 3 to node 4: go up to node 1, then up to root 5, then right to node 2, then right to node 4. Path gives UURR.

Constraints

  • The number of nodes in the tree is n.
  • 2 ≤ n ≤ 105
  • 1 ≤ Node.val ≤ n
  • All values in the tree are unique.
  • startValue ≠ destValue

Visualization

Tap to expand
Binary Tree: Step-by-Step Directions512364START: Node 3DESTINATION: Node 6PATH: 3→1→5→2→6Directions:U (3→1)U (1→5)R (5→2)L (2→6)Result: UURL
Understanding the Visualization
1
Input Tree
Binary tree with unique node values and two target nodes
2
Find Paths
Use DFS to locate paths from root to both start and destination nodes
3
Build Directions
Create string of L/R/U moves representing the shortest path
Key Takeaway
🎯 Key Insight: The shortest path always goes through the lowest common ancestor of the two nodes
Asked in
Facebook 25 Amazon 18 Google 15 Microsoft 12
89.5K Views
Medium Frequency
~25 min Avg. Time
1.8K Likes
Ln 1, Col 1
Smart Actions
💡 Explanation
AI Ready
💡 Suggestion Tab to accept Esc to dismiss
// Output will appear here after running code
Code Editor Closed
Click the red button to reopen