1483. Kth Ancestor of a Tree Node

https://leetcode.com/problems/kth-ancestor-of-a-tree-node

Description

You are given a tree with n nodes numbered from 0 to n - 1 in the form of a parent array parent where parent[i] is the parent of ith node. The root of the tree is node 0. Find the kth ancestor of a given node.

The kth ancestor of a tree node is the kth node in the path from that node to the root node.

Implement the TreeAncestor class:

  • TreeAncestor(int n, int[] parent) Initializes the object with the number of nodes in the tree and the parent array.

  • int getKthAncestor(int node, int k) return the kth ancestor of the given node node. If there is no such ancestor, return -1.

Example 1:

Constraints:

  • 1 <= k <= n <= 5 * 104

  • parent.length == n

  • parent[0] == -1

  • 0 <= parent[i] < n for all 0 < i < n

  • 0 <= node < n

  • There will be at most 5 * 104 queries.

ac

Last updated

Was this helpful?