- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据结构顺序表
数据结构顺序表
实验1 顺序表的操作
1. 输入一组整型元素序列,建立顺序表。
2. 实现该顺序表的遍历。
3. 在该顺序表中进行顺序查找某一元素,查找成功返回1,否则返回0。
4. 判断该顺序表中元素是否对称,对称返回1,否则返回0。
5. 实现把该表中所有奇数排在偶数之前,即表的前面为奇数,后面为偶数。
6. * 输入整型元素序列利用有序表插入算法建立一个有序表。
7. * 利用算法6建立两个非递减有序表并把它们合并成一个非递减有序表。
8. 编写一个主函数,调试上述算法。
9. * 综合训练:利用顺序表实现一个班级学生信息管理(数据录入、插入、删除、排序、查找等)
#include stdio.h
#include stdlib.h
#define MAXSIZE 100 //表中元素的最大个数
typedef int ElemType; //元素类型
typedef struct list
ElemType elem[MAXSIZE]; //静态线性表
int length; //表的实际长度
}SqList; //顺序表的类型名
void creSqList(SqList list)//1.建立顺序表
int n,i;
printf(n=);
scanf(%d, n);
for(i=0;i
printf(No %d = , i+1);
scanf(%d, x);
list.elem[i]=x;
list.length=n;
void traverse(SqList abc)//2. 表的遍历
for(int i=0;i
printf(%d , abc.elem[i]);
void Find(SqList abc)//3. 表中元素查找
int a,m=0,i=0;
printf(请输入需要查找的数据:); scanf(%d,a); while (i
printf(第三题答案是:%d\n\n\n,m);
void symmetry(SqList abc)//4. 判断表是否为对称表,若是返回1,否则为0;
//首先应考虑元素总数的个数。奇数时先找到中间元素,然后再比较其余元素是否一样。若为偶数,则直接头尾比较
int i=0,count=0,m=0,n=0;
int len1,len2;
int *str1,*str2;
for( ;i
count++;
// printf (count=%d\n,count) ;
if ( abc.length % 2 == 0 )//数组元素总数为偶数个
{ } len1=count/2; len2=count/2; str1=(int*)malloc(len1*sizeof(int)); str2=(int*)malloc(len2*sizeof(int));//两个可变数组 for (i=0;i
str2[m]=abc.elem [i+1];
if (i+1==abc.length)
str2[m]=0;
//printf(str2[%d]=%d\n,m,str2[m]);
for (i = 0 ; i
if (str1[i]==str2[abc.length / 2 - i - 1])
printf(第四题的答案是:%d\n,n);
void jiou(SqList abc)//5.
int *p ,*q ,temp;
p=abc.elem[0];
q=abc.elem[abc.length-1];
while ( p
if ( *p % 2 != 0)// 偶数 { p++; continue; } if ( *q % 2 == 0 ) { q--; continue; } temp=*p; *p=*q; *q=temp; } printf(调整之后为:\n); for (int i = 0 ; i
printf(\n);
void Insert(SqList a )//6. 因为上一步奇偶排序后有序表变为了无序表。故先做排序。采用冒泡排序方法
int i , j , k , n ;
for ( i = 0 ; i
if ( a.elem [i] a.elem
您可能关注的文档
最近下载
- 2025年泡沫铝行业研究报告及未来发展趋势预测.docx
- 智慧城市应急管理信息化平台建设方案(47页).pptx VIP
- 班主任基本功大赛育人故事一等奖:从“心”擦亮星星的光.docx VIP
- (高清版)-B-T 41932-2022 塑料 断裂韧性(GIC和KIC)的测定 线弹性断裂力学(LEFM)法.pdf VIP
- 上海牛津英语5B知识点汇总.docx VIP
- 华为交换机配置教程(从入门开始)-华为交换机详细教程.pdf VIP
- 机械创新设计第七章 仿生原理与创新设计 .ppt VIP
- 高等教育心理学课件.ppt VIP
- ISO 55013-2024 资产管理-数据资产管理指南(中文版-雷泽佳翻译-2024).docx
- 发改价格〔〕670建设工程监理与相关服务收费标准.doc VIP
文档评论(0)