Por que não vai o meu trabalho solução para encontrar profundidade mínima de uma árvore binária?

sp92:

Eu não entendo como minha solução para encontrar profundidade mínima de uma árvore binária não funciona? O que estou fazendo de errado?

Aqui está um link para o problema, se você estiver curioso: https://leetcode.com/problems/minimum-depth-of-binary-tree/submissions/

public int minDepth(TreeNode root) {
    if(root == null) return 0;

    int left = minDepth(root.left);
    int right = minDepth(root.right);

    int ans = Math.min(left, right) + 1;

    return ans;
}
De anel O:

Seu código não vai funcionar no caso apenas um lado é nulo , como

  3
 / \
   20
  /  \
 15   7

como ele irá retornar 1 (enquanto 3não é uma folha).

Você precisa testar se um lado é nula , ignorá-lo e lidar com o outro lado

Acho que você gosta

Origin http://43.154.161.224:23101/article/api/json?id=212939&siteId=1
Recomendado
Clasificación