中山大学 数据结构课程 实验项目合集
基于 Qt 的科学计算器应用,支持两种计算模式:
- 普通计算模式:实现基本的四则运算表达式计算,使用栈实现运算符优先级处理
- 多项式计算模式:支持多项式的加、减、乘运算,以及多项式求值功能
核心数据结构:栈(Stack)、向量(Vector)
技术栈:C++、Qt GUI
基于 Qt 的文本编辑器,具有以下功能:
- 文件操作:新建、打开、保存、另存为
- 编辑功能:撤销、重做、剪切、复制、粘贴
- 查找与统计功能
- C++ 语法高亮
- 代码编译与运行支持
- 深色/浅色主题切换
核心功能:文本处理、语法高亮(CppHighlighter)
技术栈:C++、Qt GUI
使用二叉树结构实现的表达式计算器:
- 支持前缀表达式输入
- 前缀表达式转中缀表达式
- 构建表达式树并可视化展示
- 变量赋值与表达式求值
- 表达式合并与常量折叠
- 撤销/重做功能
核心数据结构:二叉树(Binary Tree)、栈(Stack)
技术栈:C++、Qt GUI
模拟铁路票务系统,实现图的相关算法:
- 图的存储:邻接多重表、邻接表两种存储方式
- 图的遍历:
- 深度优先搜索(DFS)
- 广度优先搜索(BFS)
- 最短路径:Dijkstra 算法(支持 for 循环和优先队列两种实现)
- 生成 DFS/BFS 遍历树
核心数据结构:图(Graph)、邻接表、邻接多重表、优先队列
技术栈:C++、Qt GUI
project/
├── project-1/ # 计算器
├── project-2/ # 文本编辑器
├── project-3/ # 基于二叉树的计算器
├── project-4/ # 图的遍历(12306模拟)
└── README.md
- C++ 11 或更高版本
- Qt 5.12
- CMake(部分项目)