leetcode 226 árbol binario tirón

árbol binario? ! flip

Tema
vuelta a un árbol binario.

Ejemplos
Ejemplo:
Entrada:
. ----- 4
---- / \
---- 2-7
- / \ - /
\ -1369
de salida:
. ---- 4
---- / \
--7 - 2
- / \ - / \
-9631

tema de análisis

  • binaria flip
    izquierda y derecha subárboles intercambio simétrico
  1. Un simétrico binario
    sobre el subárbol intercambio puntero
  2. árbol binario simétrico
    , que sub-árboles son simétricas ==> recursivas

Ideas de resolución de problemas

Proceso
para la raíz actuales
punteros de cambio en el contenido de los subárboles izquierdo y derecho

  • presencia subárbol izquierdo ==> simétrica subárbol izquierdo
  • presencia subárbol derecho ==> simetría del subárbol derecho

Código es el siguiente

class Solution {
public:
    TreeNode* invertTree(TreeNode* root) {
        if(!root) return root;
        TreeNode* temp;
        temp = root->left;
        root->left = root->right;
        root->right = temp;
        if(root->left) invertTree(root->left);       //递归左子树对称
        if(root->right) invertTree(root->right);     //递归右子树对称
        return root;
    }
};
Publicado 34 artículos originales · ganado elogios 0 · Vistas 580

Supongo que te gusta

Origin blog.csdn.net/Luyoom/article/details/104176555
Recomendado
Clasificación