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

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

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

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

  关于队列和栈:

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

    举个栗子:

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

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

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

posted @   0龙行者0  阅读(642)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示