基于QT实现的可视化链表(单链表、循环链表、双向链表)

1.1 题目

题号1:分别以单链表、循环链表、双向链表为例,实现线性表的建立、插入、删除、查找等基本操作。

要求:能够把建立、插入、删除等基本操作的过程随时显示输出来。

1.2 软件功能

功能分为三个板块,分别是单链表、循环链表、双向链表的建立、插入、删除等基本操作的过程。

单链表

查看单链表定义,相应算法代码

建立一个带头结点的空单链表

指定插入位置及元素值到单链表中

随机插入5个元素到单链表的尾部

指定删除元素位置(从1开始),从单链表中删除

输入查找值,得到元素在单链表中位置

清空销毁单链表

能够调整演示的速度快慢

循环链表

查看循环链表定义,相应算法代码

建立一个带头结点的空循环链表

指定插入位置及元素值到循环链表中

随机插入5个元素到循环链表的尾部

指定删除元素位置(从1开始),从循环链表中删除

输入查找值,得到元素在循环链表中位置

清空销毁循环链表

能够调整演示的速度快慢

双向链表

查看双向链表定义,相应算法代码

建立一个带头结点的空双向链表

指定插入位置及元素值到双向链表中

随机插入5个元素到双向链表的尾部

指定删除元素位置(从1开始),从双向链表中删除

输入查找值,得到元素在双向链表中位置

清空销毁双向链表

能够调整演示的速度快慢

上述所有功能采用面向对象的方法通过C++语言程序结合QT框架实现,后面会详细介绍。

1.3 设计思想

学习相应知识,做好必要的准备工作

由于以前都是采用控制台进行编程,即便涉及一些简单的图像界面,但是比较粗制简陋,无法入眼,并不是标准规范、人性化的用户交互界面,所以要完成本次的数据结构课程设计必须从零起步,学习可视化编程开发。在C++的一系列可视化开发框架下,我选择用Qt来实现程序的功能,因为Qt相对较为简单,容易上手入门,同时Qt是较为新兴的技术框架,并且跨平台开发,很有前景和实用性。通过几天的学习,理解掌握的Qt的必要知识,包括最为核心的信号和槽函数机制、UI控件的使用、Scene-View视图框架等核心技术。

自顶向下设计

有了必要的准备知识,就可以进行程序的总体规划设计了。自顶向下分析是常用的分析方法,本次题目其实较为简单,常用的链表结构我们在学习数据结构课程时已经非常熟练,此次实现图形化界面的演示需要结合原有结构,融入图形化元素和用户界面接口,对程序的功能分析,显然程序的功能分为三个子功能模块,分别对每个模块进行设计即可完成整个任务。

分模块实现

虽然程序有三个部分组成,但是每个部分的功能需要完全一样,用户界面完全一样,划分为三个模块,只要实现一个模块,其余两个模块只要非常短的时间就可完成。实际开发时,先实现单链表模块,完成以后,循环链表和双向链表只需要在前面基础上稍作修改即可。

自底向上实现

具体实现时,先定义每个类的属性和相应函数,然后根据定义,设计相应算法自底向上进行实现,逐个击破,最终完成所有程序的设计。

参考文档和完整的文档和源码下载地址:

https://www.write-bug.com/article/1393.html

你可能感兴趣的:(基于QT实现的可视化链表(单链表、循环链表、双向链表))