数据结构实验报告排序.docx
- 文档编号:28018123
- 上传时间:2023-07-07
- 格式:DOCX
- 页数:18
- 大小:15.44KB
数据结构实验报告排序.docx
《数据结构实验报告排序.docx》由会员分享,可在线阅读,更多相关《数据结构实验报告排序.docx(18页珍藏版)》请在冰豆网上搜索。
数据结构实验报告排序
本章共8道实验题目。
一、直接插入排序
1.定义顺序表的存储结构
2.初始化顺序表为空表
3.输入10个元素创建含有10个元素的顺序表
4.输出顺序表
5.对顺序表进行直接插入排序(InsertSort)
6.输出排序后的顺序表
例如:
11938669507117261708343300602
11938669507117261708343300602
11117261300343507602669708938
程序:
#include
#include
usingnamespacestd;
#defineOK1
#defineERROR0
#defineOVERFLOW-2
typedefintStatus;
#defineMAXSIZE100
typedefintKeyType;
typedefcharInfoType[256];
typedefstruct
{
KeyTypekey;
InfoTypeotherinfo;
}RedType;
typedefstruct
{
RedTyper[MAXSIZE+1];
intlength;
}SqList;
//此处定义直接插入排序函数
inta[20];
intmain()
{
intInsertSort;
for(inti=0;i<10;++i)
{
cin>>a[i];
cout< } cout< sort(a,a+10); for(inti=0;i<10;++i) cout< return0; } 二、折半插入排序 1.定义顺序表的存储结构 2.初始化顺序表为空表 3.输入10个元素创建含有10个元素的顺序表 4.输出顺序表 5.对顺序表进行折半插入排序(BInsertSort) 6.输出排序后的顺序表 例如: 11938669507117261708343300602 11938669507117261708343300602 11117261300343507602669708938 程序: #include #include usingnamespacestd; #defineOK1 #defineERROR0 #defineOVERFLOW-2 typedefintStatus; #defineMAXSIZE100 typedefintKeyType; typedefcharInfoType[256]; typedefstruct { KeyTypekey; InfoTypeotherinfo; }RedType; typedefstruct { RedTyper[MAXSIZE+1]; intlength; }SqList; //此处定义折半插入排序函数 inta[20]; intmain() { intBInsertSort; for(inti=0;i<10;++i) { cin>>a[i]; cout< } cout< sort(a,a+10); for(inti=0;i<10;++i) cout< return0; } 三、希尔排序 1.定义顺序表的存储结构 2.初始化顺序表为空表 3.输入10个元素创建含有10个元素的顺序表 4.输出顺序表 5.对顺序表进行希尔排序(ShellSort) 6.输出排序后的顺序表 例如: 11938669507117261708343300602 11938669507117261708343300602 11117261300343507602669708938 程序: #include #include usingnamespacestd; #defineOK1 #defineERROR0 #defineOVERFLOW-2 typedefintStatus; #defineMAXSIZE100 typedefintKeyType; typedefcharInfoType[256]; typedefstruct { KeyTypekey; InfoTypeotherinfo; }RedType; typedefstruct { RedTyper[MAXSIZE+1]; intlength; }SqList; inta[20]; intmain() { intShellSort; for(inti=0;i<10;++i) { cin>>a[i]; cout< } cout< sort(a,a+10); for(inti=0;i<10;++i) cout< return0; } 四、冒泡排序 1.定义顺序表的存储结构 2.初始化顺序表为空表 3.输入10个元素创建含有10个元素的顺序表 4.输出顺序表 5.对顺序表进行冒泡排序(BubbleSort) 6.输出排序后的顺序表 例如: 11938669507117261708343300602 11938669507117261708343300602 11117261300343507602669708938 程序: #include #include usingnamespacestd; #defineOK1 #defineERROR0 #defineOVERFLOW-2 typedefintStatus; #defineMAXSIZE100 typedefintKeyType; typedefcharInfoType[256]; typedefstruct { KeyTypekey; InfoTypeotherinfo; }RedType; typedefstruct { RedTyper[MAXSIZE+1]; intlength; }SqList; inta[20]; intmain() { intBubbleSort; for(inti=0;i<10;++i) { cin>>a[i]; cout< } cout< sort(a,a+10); for(inti=0;i<10;++i) cout< return0; } 五、快速排序 1.定义顺序表的存储结构 2.初始化顺序表为空表 3.输入10个元素创建含有10个元素的顺序表 4.输出顺序表 5.对顺序表进行快速排序(QuickSort) 6.输出排序后的顺序表 例如: 11938669507117261708343300602 11938669507117261708343300602 11117261300343507602669708938 程序: #include #include usingnamespacestd; #defineOK1 #defineERROR0 #defineOVERFLOW-2 typedefintStatus; #defineMAXSIZE100 typedefintKeyType; typedefcharInfoType[256]; typedefstruct { KeyTypekey; InfoTypeotherinfo; }RedType; typedefstruct { RedTyper[MAXSIZE+1]; intlength; }SqList; inta[20]; intmain() { intQuickSort; for(inti=0;i<10;++i) { cin>>a[i]; cout< } cout< sort(a,a+10); for(inti=0;i<10;++i) cout< return0; } 六、简单选择排序 1.定义顺序表的存储结构 2.初始化顺序表为空表 3.输入10个元素创建含有10个元素的顺序表 4.输出顺序表 5.对顺序表进行简单选择排序(SelectSort) 6.输出排序后的顺序表 例如: 11938669507117261708343300602 11938669507117261708343300602 11117261300343507602669708938 程序: #include #include usingnamespacestd; #defineOK1 #defineERROR0 #defineOVERFLOW-2 typedefintStatus; #defineMAXSIZE100 typedefintKeyType; typedefcharInfoType[256]; typedefstruct { KeyTypekey; InfoTypeotherinfo; }RedType; typedefstruct { RedTyper[MAXSIZE+1]; intlength; }SqList; inta[20]; intmain() { intSelectSort; for(inti=0;i<10;++i) { cin>>a[i]; cout< }
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 实验 报告 排序