vdom diff

其实diff的核心在于两点:

比对(diff的运算过程)
修改(diff的返回结果,输出生成的patch并操作)
树的BFS(广度优先遍历)/DFS(深度优先遍历),需要O(N)的时空复杂度
传统diff算法通过循环递归对节点进行依次对比效率低下,算法复杂度达到O(N^3)

传统diff算法追求(完全)比对和(最小)修改,而React、Vue则是放弃了完全及最小,只进行同级比较,才实现从O(N^3) => O(N)

原文地址:https://www.cnblogs.com/gloxing/p/14758756.html