求解Josephus问题实验总结(用C语言循环单链表实现)_循环单链表实验报告

2020-02-27 其他工作总结 下载本文

求解Josephus问题实验总结(用C语言循环单链表实现)由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“循环单链表实验报告”。

求解Josephus问题实验总结

1实验题目: josephus问题可描述如下:

设有n个人围成一个环,现从第s个人开始报数,数到第m的人出列,然后从出列的下一个人从新开始报数,数到第m的人又出列,如此重复,直至所有人均出列为止。求这些人出列的顺序。

2实验目的:

熟练掌握线性表的顺序实现和链式实现的基本操作。

3实验方法:

通过运用已学的向量和循环单链表编写程序,并在电脑上运行,实现josephus问题的求解。4实验过程与结果:

(1)输入n值为6,s值为3,m值为2,输入A[i]的值为1 2 3 4 5 6 输出结 果为:4 6 2 5 3 1 截图如下:

(2)

1、输入n值为-1, s值为3,m值为2,显示:ERROR。截图如下:

2、输入n值为6, s值为0,m值为3,显示:ERROR。截图如下:

3、输入n值为6, s值为3,m值为0,显示:ERROR。截图如下

5试验体会与收获:

(1)写程序是要随时注意缩进,使得程序层次清晰,便于寻找错误,同时也让别人看的更加方便。(2)构造循环单链表,要以单链表为单元指针指向把最后个单元与第一个即可(3)建立好循环单链表后,通过三个指针(p,q,tmp)的指示,来确定报数,出列人的位置,得以完成。具体过程如下:p指向head头指针,通过s次循环将p指向报数的起始位置s,用q记录p的位置,再经过m次循环另p指向出列者的位置,将其数值保存在一维数组中,并将其从链表中删除,p指向下一次起始位置,结束时返回数组A[j]。(4)删除节点时,注意要释放节点。

(5)构造函数时,一定要明确函数的类型,即返回行还是不返回型,以免出现不必要的错误。

《求解Josephus问题实验总结(用C语言循环单链表实现).docx》
将本文的Word文档下载,方便收藏和打印
推荐度:
求解Josephus问题实验总结(用C语言循环单链表实现)
点击下载文档
相关专题 循环单链表实验报告 链表 语言 Josephus 循环单链表实验报告 链表 语言 Josephus
[其他工作总结]相关推荐
    [其他工作总结]热门文章
      下载全文