LinkedList 含iterator写法的理解

今天晚上感觉对LinkedList还没完全理解,就尝试自己写了一遍。

但是写到merge函数就发现我自己想的和之前查到的写法有区别,我没有用到Iterator,于是脑子里想的第一件事是遍历节点。

但是Iterator做到的,就是简化节点遍历的写法。

基本功能函数中节点的操作也完全符合牵线的物理直觉。

但是我在考虑Iterator的返回值时卡了壳,但现在想,最适合的返回值就是节点地址,同时让构造函数比创建的变量更加重要,但某种程度上确实也是多此一举,也可能是为了让形式便于理解,而不是写起来容易。

从理解框架的角度来想很合适:

一个新节点用Iterator的构造函数初始化,也有销毁时的析构函数,用Iterator类的成员函数取出data,访问next,判断等于还是不等于,左右++用访问next的辅助函数写出来,这让Iterator成为了一种集成->,*(),左右++,=,!=总共6中运算的极利于操作数据结构的类型。

这个时候Node是初始化的变量,data是访问信息。

分工变得一目了然。

pair<>和template的细节还不够,但是已经够用了

接下来是二叉搜索树

相关推荐
米码收割机2 小时前
【AI】OpenClaw问题排查
开发语言·数据库·c++·python
所谓伊人,在水一方3332 小时前
【Python数据科学实战之路】第10章 | 机器学习基础:从理论到实践的完整入门
开发语言·人工智能·python·机器学习·matplotlib
无风听海2 小时前
Python之TypeVar深入解析
开发语言·python·typevar
李白的粉2 小时前
基于springboot的来访管理系统
java·spring boot·毕业设计·课程设计·源代码·来访管理系统
东离与糖宝2 小时前
告别Python!Spring Boot 3集成GPT-5.4,Java后端10分钟接入原生计算机操作
java·人工智能
用户2058620985832 小时前
仿 12306 高并发购票系统:抢票下单逻辑设计
java
白中白121382 小时前
杂七杂八补充系列
开发语言·前端·javascript
佩奇大王2 小时前
P8 单词分析
java·开发语言
飞Link2 小时前
概率图模型的基石:隐马可夫模型 (HMM) 深度解析
开发语言·python·算法