数据结构课程设计

发布 2022-10-05 01:42:28 阅读 8137

数据结构。

课程设计。二o一o 年十二月二十二日。

1.设计题目。

*问题描述:

利用链表的插入运算建立线性链表,然后利用链表的查找、删除、计数、输出等运算反复实现链表的这些操作(插入、删除、查找、计数、输出单独写成函数的形式),并能在屏幕上输出操作前后的结果。

2.运行环境。

windows vista,microsoft visual studio 2010

3.算法设计的思想。

3.1 确定表的长度n,即求表中数据元素的个数;

3.2 读表:从左到右(或从右到左)读表,即按a1,a2,……an(或an,an-1 ,…a1 )读取数据元素的值;

3.3 检索:即在表中查找具有某个特征值的数据元素;

3.4 改写:修改、存入表中第i个数据元素(1≤i≤n),即给第i个数据元素赋值;

3.5 插入:在第i-1个和第i个数据元素之间(1≤i≤n)插入一个新的数据元素,使原来的第i,i+1,……n个数据元素变成为第i+1,i+2,……n,n+1个数据元素;

3.6 删除:删除第i个数据元素(1≤i≤n),使原来的第i+1,i+2,……n 个数据元素变成为第i,i+1,……n-1个数据元素;

3.7 排序:即按某个特征值递增(或递减)的顺序对表中的数据元素重新排列。

3.8 归并:将两个以上的有序线性表合并成一个新表。

4.算法的流程图。

5.算法设计分析。

系统提供的功能有:线性表的初始化操作,插入元素,删除元素,显示所有元素,排序和查找第i个元素。用户可根据显示菜单来进行相关操作。

插入一个元素:例如在第i个元素之前插入一个元素,首先要将尾元素到第i个元素向后移动一位,再将新元素传送到第i个位置,即可。

删除一个元素:例如删除第i个元素时,要将第i+1个元素到最后一个元素向前移到一位。尾数置零。

6.源**。

#include ""

main()

int a[10],de=0,i=0,data=0,locate=0,t=0,j=0;

printf("请依次输入10个输入数据:");

for(i=0;i<10;i++)

printf("");

for(i=0;i<10;i++)

for(;;

for(i=de;i<9;i++)

a[i]=a[i+1];

a[9]=0;

if(j==2)

for(i=8;i>=locate;i--)

a[i+1]=a[i];

a[locate]=data;

if(j==3)

if(j==4)

printf("%d", a[locate]);

if(j==5)

if(j==0)

if(j>5)

7.运行结果分析。

7.1依次输入十个数据。

7.2遍历。

输入0选项实现数字的遍历,按顺序显示输入的数据。

7.3删除。

删除数据范围内的数字。删除后,后位数字依次向前移位,末位补0。

删除数据范围外的数字,显示超出范围请重新输入。

7.4插入。

插入数据位置在范围内。

插入数据位置超出范围,显示超出范围请重新输入。

7.5排序。

对数据进行升序排列。

7.6查找。

按位置查找,查找数据位置范围内,显示该位置数字。

按位置查找。查找超出数据表范围,显示超出范围请重新输入。

7.7退出。

输入指令**5,退出程序。

数据结构课程设计

课程设计说明书 题目哈夫曼编码问题的设计和实现。课程名称数据结构课程设计。院 系 部 中心。专业。班级。学生姓名。学号。设计地点。指导教师。设计起止时间 2008 年6月 2日至 2008 年 6月 6 日。目录。1 问题描述 2 1.1 题目内容 2 1.2 基本要求 2 1.3 测试数据 2 2...

数据结构课程设计

数据结构 课程设计。实验报告。学院 信息工程学院。班级 姓名 学号 指导老师 题目2 一元多项式的计算。1 实验目的。1 掌握链表的灵活运用 2 学习链表初始化和建立一个新的链表 3 知道怎样去实现链表删除结点操作与插入结点 4 理解链表的基本操作 包括数据域数据的相加 并能灵活运用。2 实验内容。...

数据结构课程设计

班级 信计 1102 姓名 李娜娜。学号 1108060209 设计日期 2013.07.15 西安科技大学计算机学院 1.实验题目 编制一个演绎扫雷游戏的程序。2.问题描述。做一个n x m的扫雷游戏,每个方格包含两种状态 关闭 closed 和打开 opened 初始化时每个方格都是关闭的,一个...