当前位置:网站首页>Leetcode - 226. Retourner l'arbre binaire (bfs)

Leetcode - 226. Retourner l'arbre binaire (bfs)

2022-06-26 17:15:00 Toujours - - apprendre

Description du sujet

image.png

Comment résoudre le problème

BFSEst au cœur de la résolution de ce problème,BFSLe noeud initial de est un noeud racine.

  1. Mettez d'abord le noeud racine dans le tableau.
  2. Extraire le premier élément du tableau,Et ensuite échanger les noeuds gauche et droit de cet élément.
  3. Si le noeud gauche existe,Ajoutez le noeud gauche au tableau.
  4. Si le noeud droit existe,Ajoutez le noeud droit au tableau.

ACCode

var invertTree = function(root) {
    
  // UtiliserBFSRésoudre le problème de l'arbre binaire inversé
  if (!root) return null;
  const res = [root];

  while (res.length) {
    
    let cur = res.shift();
    // Échanger les noeuds gauche et droit
    [cur.left, cur.right] = [cur.right, cur.left];
    if (cur.left) {
    
      res.push(cur.left);
    }
    if (cur.right) {
    
      res.push(cur.right);
    }
  }
  return root;
};

Réflexion

Le miroir et l'inversion des arbres binaires sont un problème ,Dans l'ensemble, à traversBFS Peut résoudre ce problème efficacement .

原网站

版权声明
本文为[Toujours - - apprendre]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/177/202206261700416343.html