下载此文档

经典数据结构上机题—答案.doc


文档分类:IT计算机 | 页数:约48页 举报非法文档有奖
1/48
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/48 下载此文档
文档列表 文档介绍
经典数据结构上机题—答案
数据结构上机实验题目
实验一 线性表的顺序存储结构
实验学时 2学时
背景知识:顺序表的插入、删除及应用。
目的要求:
1.掌握顺序存储结构的特点。
2.掌握顺序存储结构的常见算法。
实验内容
1.输入一组整型元素序列,建立顺序表。
2.实现该顺序表的遍历。
3.在该顺序表中进行顺序查找某一元素,查找成功返回1,否则返回0。
4.判断该顺序表中元素是否对称,对称返回1,否则返回0。
5.实现把该表中所有奇数排在偶数之前,即表的前面为奇数,后面为偶数。
6.输入整型元素序列利用有序表插入算法建立一个有序表。
7.利用算法6建立两个非递减有序表并把它们合并成一个非递减有序表。
8. 利用该顺序结构实现循环队列的入队、出队操作。
8.编写一个主函数,调试上述算法。
#include <>
#include <>
#define OVERFLOW 0
#define MAXSIZE 100
typedef int ElemType;
typedef struct list
{ElemType elem[MAXSIZE];
int length;
}Sqlist;
void Creatlist(Sqlist &L)
{int i;
printf("请输入顺序表的长度:"); //输入一组整型元素序列,建立一个顺序表。
scanf("%d",&);
for(i=0;i<;i++)
scanf("%d",&[i]);
}
void printlist(Sqlist &L) //以输出的形式实现对该顺序表的遍历
{int i;
for(i=0;i<;i++)
printf("%d ",[i]);
printf("\n");
}
void Searchlist(Sqlist &L,int x) //在顺序表中进行顺序查找某一元素x,查找成功则返回其存储位置i,否则返回错误信息
{int i,k=-1;
for(i=0;i<;i++)
if([i]==x){
k=i+1;printf("%d ",k);}
if(k==-1)
printf("error!");
printf("\n");
}
void Inseri(Sqlist &L,int i,int x) //在顺序表的第i个位置上插入一个元素x
{int j;
for(j=;j>=i;j--)
[j]=[j-1];
[j]=x;
++;
}
void Delete(Sqlist &L,int i) //删除顺序表中第i个元素
{int j;
for(j=i;j<;j++)
[j-1]=[j];
--;
}
void Insert(Sqlist &L,int x) //输入一个元素x,把它插入到有序表中,使顺序表依然有序。
printf(".\n");
printf(".\n");
printf(".\n");
printf(".\n");
printf(".\n");
printf(",并把它们合并成一个非递减有序表.\n");
printf(",把它插入到有序表中,使顺序表依然有序.\n");
while(1){
printf("请选择:");
scanf("%d",&n);
switch(n)
{case 1:Creatlist(L);break;
case 2:printlist(L);break;
case 3:printf("请输入要查找的元素x:");
scanf("%d",&x);
Searchlist(L,x);break;
case 4:printf("请输入要插入的位置i:");
scanf("%d",&i);
if(i<1||i>+1){
printf("error!\n");break;}
printf("

经典数据结构上机题—答案 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数48
  • 收藏数0 收藏
  • 顶次数0
  • 上传人Alone-丁丁
  • 文件大小1.78 MB
  • 时间2021-05-27