双向链表

实践练习C++17

简介

你参与开发繁忙铁路网的列车调度系统。

你负责线路原型,每条线路由列车依次停靠的一系列车站组成。

任务说明

团队决定用双向链表表示每条列车线路,每个车站对应一个节点。

不必考虑到发时间,每个车站只用数字表示。

可以在线路开头或末尾增加车站,也可以从两端移除车站,以延长或缩短线路。

有时某站关闭,即使它在线路中间,也必须删除。

线路大小按停靠站数量衡量,而不是行驶距离。

背景 链表是计算机科学的基础数据结构,也经常用于实现其他结构。它由相互连接的节点组成,每个节点指向相邻节点。单向链表只指向后继,双向链表同时指向前驱与后继。

想进一步了解,可以阅读这篇带有清晰图示的链表文章。