2.0 KiB
2.0 KiB
TODO List — 组员A
负责模块: 车次信息管理(顺序表)
核心数据结构: 顺序表 TrainList
文件: src/train.h、src/train.cpp
分支: feature/train
一、顺序表基础操作
ListInsert— 在位置 i 插入车次(检查越界/满/重复)ListDelete— 删除位置 i 的车次(元素前移)ListUpdate— 更新位置 i 的车次信息
二、查找算法(两种)
SeqSearch— 顺序查找(按车次号逐个比较)BinSearch— 二分查找(需先按 trainNo 排序)SearchByStation— 按始发站/终点站模糊查找AdvancedSearch— 多条件组合查询(站名 + 票价区间)
三、排序算法(三种)
InsertSort— 直接插入排序(按车次号升序)QuickSort— 快速排序(按票价排序)HeapSort— 堆排序(按余票数排序)
四、文件读写
loadTrainsFromFile— 从data/trains.csv读取车次数据saveTrainsToFile— 将车次数据写回data/trains.csv
五、管理员交互接口
adminAddTrain— 交互式新增车次(录入各字段,校验合法性)adminDeleteTrain— 按车次号查找并删除adminModifyTrain— 查找后选择字段修改adminListTrains— 遍历输出所有车次(格式化表格)adminSearchTrain— 菜单选择查找方式(顺序/二分/模糊)adminSortTrains— 菜单选择排序方式(票价快排 / 余票堆排)adminShowStatistics— 调用 hash 模块统计函数展示
六、乘客交互接口
passengerSearchTrain— 乘客查车次(按站名/时间/票价筛选)
依赖关系: 先完成基础操作(增删改)和文件读写 → 再做查找 → 再做排序 → 最后做交互接口
验收标准: 管理员能完成车次增删改查全流程,排序结果正确,数据重启后不丢失