Algorithmen und Datenstrukturen · Senior · Frage 35 von 75
Warum läuft die Reconciliation von React in O(n), wenn ein allgemeiner Baum-Diff etwa O(n³) ist?
- 1Sie hasht den ganzen Baum und vergleicht die Hashes
- 2Sie nutzt Elementtypen und Keys als Heuristiken
- 3Sie vergleicht nur die Wurzelelemente beider Bäume
Antwort zeigen
Richtige Antwort: Sie nutzt Elementtypen und Keys als Heuristiken
Erklärung
Die minimale Baum-Edit-Distanz ist teuer. React vergleicht Ebene für Ebene: ein geänderter Typ ersetzt den Teilbaum, und key ordnet Kinder zwischen Renderings zu. Diese Heuristiken liegen bei UI-Code fast immer richtig.