关于迭代法的理解及其使用注意事项

1 迭代法的话, 本质上就是挨个遍历的意思, 只不过是根据题目条件的不同导致的遍历的方式和顺序发生了变化

2 听说迭代法和队列与栈更配哦

  反正, 这几次遇到的几道题目, 一般比较有点技巧的迭代法, 都会借助队列和栈来帮助完成

  关于队列和栈:

    本质上就是一个容器, 但是由于其存取数据的特殊性, 我们通常可以使用其来简化多指针的操作

    举个栗子:

      就拿第101题, 二叉树的镜像对称问题来说, 如果采用迭代法的话, 我们就需要记录4个指针, 分别是两个父节点指针和两个子节点指针, 但是通过使用这两个容器, 我们可以把父指针指向节点的 两个孩子节点放入容器中, 作为下一次遍历的父节点, 这样的话就大大减少了引用的数量, 还是一个挺不错的技巧

3 感觉就是, 关于迭代法, 是用来遍历每一个需要进行操作对象的, 而借助队列和栈的数据结构, 是用来存储下一次需要遍历的对象的. 

 由于队列和栈特殊的进出特性, 对于遍历过的元素可以直接取出, 而没有遍历过的元素可以动态的放入容器中

posted @ 2021-03-07 15:11  0龙行者0  阅读(600)  评论(0编辑  收藏  举报