vdom diff

其实diff的核心在于两点:

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

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

posted @ 2021-05-12 10:35  gloxing  阅读(69)  评论(0编辑  收藏  举报