Class Solution

  • All Implemented Interfaces:

    
    public final class Solution
    
                        

    2096 - Step-By-Step Directions From a Binary Tree Node to Another\.

    Medium

    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.

    Example 1:

    Input: root = 5,1,2,3,null,6,4, startValue = 3, destValue = 6

    Output: "UURL"

    Explanation: The shortest path is: 3 → 1 → 5 → 2 → 6.

    Example 2:

    Input: root = 2,1, startValue = 2, destValue = 1

    Output: "L"

    Explanation: The shortest path is: 2 → 1.

    Constraints:

    • The number of nodes in the tree is n.

    • <code>2 <= n <= 10<sup>5</sup></code>

    • 1 &lt;= Node.val &lt;= n

    • All the values in the tree are unique.

    • 1 &lt;= startValue, destValue &lt;= n

    • startValue != destValue

    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
    • Field Summary

      Fields 
      Modifier and Type Field Description
    • Constructor Summary

      Constructors 
      Constructor Description
      Solution()
    • Enum Constant Summary

      Enum Constants 
      Enum Constant Description
    • Method Summary

      Modifier and Type Method Description
      final String getDirections(TreeNode root, Integer startValue, Integer destValue)
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait