最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

顺序表的归并

来源:动视网 责编:小OO 时间:2025-09-30 08:47:11
文档

顺序表的归并

《数据结构与算法设计》实验报告——实验1学院:自动化学院班级:自动化2班学号:1320110130姓名:赵帅一、实验目的:理解抽象数据类型的定义;学会用c语言实现对线性循环链表的基本操作;二、实验内容采用单向环表实现约瑟夫环。三、程序设计1、概要设计:(说明程序中用到的抽象数据类型定义,宏定义,主程序的流程以及各个程序模块之间的调用关系,给出主要流程图)抽象数据类型定义:ADTList{数据对象:D={ai|ai∈ElemSet,i=1,2,…,n,n≥0}数据关系:R1={|ai-1,ai∈
推荐度:
导读《数据结构与算法设计》实验报告——实验1学院:自动化学院班级:自动化2班学号:1320110130姓名:赵帅一、实验目的:理解抽象数据类型的定义;学会用c语言实现对线性循环链表的基本操作;二、实验内容采用单向环表实现约瑟夫环。三、程序设计1、概要设计:(说明程序中用到的抽象数据类型定义,宏定义,主程序的流程以及各个程序模块之间的调用关系,给出主要流程图)抽象数据类型定义:ADTList{数据对象:D={ai|ai∈ElemSet,i=1,2,…,n,n≥0}数据关系:R1={|ai-1,ai∈
《数据结构与算法设计》

实验报告

——实验1

学院:自动化学院

班级:自动化2班

学号:1320110130

姓名:赵帅

一、实验目的  :理解抽象数据类型的定义;学会用c语言实现对线性循环链表的基本操作;                             

二、实验内容 

    采用单向环表实现约瑟夫环。

三、程序设计 

   1、概要设计:

(说明程序中用到的抽象数据类型定义,宏定义,主程序的流程以及各个程序模块之间的调用关系,给出主要流程图 )

抽象数据类型定义:

ADT List{

数据对象:D={ai|ai∈ElemSet, i=1,2, …,n, n≥0}

数据关系:R1={|ai-1,ai∈D, i=1,2, …,n }

基本操作:

Creat(m)

操作结果:创见一个具有m个结点的单向环表;

}

宏定义:无;

流程图:

                   

  

四、程序调试分析 

(程序运行中遇到的问题与改正措施,以及对程序调试的体会与收获 )

局部变量和全局变量的使用;一些简单的语法错误;

细节决定成败,养成良好的变成习惯十分重要。

五、用户使用说明 

(说明如何使用你的程序,给出操作步骤)

打开软件,待显示器上出现“请输入单向环表的结点数:”后:输入想要建立环表的结点数,按“enter”键结束。显示器上显示“请输入计数起点和间隔:”后,输入想要计数的起点按回车键后输入间隔数,按“enter”结束。若显示器上显示“您输入的数据有误!”时说明你输入的为无效数据请查证。

六、程序运行结果

(列出测试结果,包括输入和输出,最好给出2个测试结果)

1, 请输入单向环表的结点数:10

请输入计数起点和间隔:3 4

输出序列为:

   6  10  4  9  5  2  1  3  8  7

2,请输入单向环表的结点数:10

请输入计数起点和间隔:12 4 

您输入的数据有误!

七、程序清单

(要求给函数加上注释)

#include   "stdlib.h"  

#include

struct ele {   

    int no;   

    struct ele *link;   

};

struct ele *h, *u;//声明全局变量

struct ele Creat(m)

{

    int i;

    h = u = (struct ele *) malloc(sizeof(struct ele));/*形成首表元*/  

h->no = 1;

for (i = 2; i <= m; i++)/*形成其余的m-1个表元*/  

    {   

u->link = (struct ele *) malloc(sizeof(struct ele));

u = u->link;

u->no = i;/*第i个表元置编号i*/  

    }   

u->link = h;/*末表元后继首表元,形成环*/  

}

main() {    

  

    struct ele *p,*q;

    int n, m, i,s;   

    printf("请输入单向环表的结点数:");   

    scanf("%d", &m);/*输入n和m*/ 

    Creat(m);

    

    printf("请输入计数起点和间隔:"); 

    scanf("%d %d", &s,&n);

if (s<1||s>m)

        printf ("您输入的数据有误");

    else    

    {   printf("输出序列为:\\n");

        p=h;

     for (i = 1; i < s-1; i++)

             p = p->link; /*掠过前s-1个表元*/  

        while (m) {   

     for (i = 1; i < n; i++)

             p = p->link;

                /*掠过n-1个表元*/  

             q= p->link;

               

           /*p指向第n个表元*/  

         p->link = q->link;/*第n个表元从环中脱钩*/  

         printf("%4d", q->no);

            free(q);/*释放第n个表元占用的空间*/  

            m--;   

        }  

    }

        printf("\\n"); 

}

文档

顺序表的归并

《数据结构与算法设计》实验报告——实验1学院:自动化学院班级:自动化2班学号:1320110130姓名:赵帅一、实验目的:理解抽象数据类型的定义;学会用c语言实现对线性循环链表的基本操作;二、实验内容采用单向环表实现约瑟夫环。三、程序设计1、概要设计:(说明程序中用到的抽象数据类型定义,宏定义,主程序的流程以及各个程序模块之间的调用关系,给出主要流程图)抽象数据类型定义:ADTList{数据对象:D={ai|ai∈ElemSet,i=1,2,…,n,n≥0}数据关系:R1={|ai-1,ai∈
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top