数据结构实验报告—约瑟夫问题求解.docxVIP

  • 67
  • 0
  • 约5.4千字
  • 约 16页
  • 2016-12-13 发布于浙江
  • 举报

数据结构实验报告—约瑟夫问题求解.docx

《计算机软件技术基础》 实验报告I—数据结构实验一、约瑟夫斯问题求解一、问题描述1.实验题目:编号1,2,....,n的n个人顺时针围坐一圈,每人持有一个密码(正整数)。 开始选择一个正整数作为报数上限m,从第一个人开始顺时针自1报数,报到m的人出列,将他的密码作为新的m值,从他在顺时针方向下一个人开始重新从1报数,直至所有人全部出列。 2.基本要求:利用单向循环链表存储结构模拟此过程,按照出列的顺序印出个人的编号。3.测试数据:n=7,7个人的密码依次为:3,1,7,2,4,8,4.m初值为6(正确的出列顺序应为6,1,4,77,2,3)。二、需求分析 1.本程序所能达到的基本可能: 该程序基于循环链表来解决约瑟夫问题。用循环链表来模拟n个人围坐一圈,用链表中的每一个结点代表一个人和他所代表的密码。在输入初始密码后m,对该链表进行遍历,直到第m个结点,令该结点的密码值作为新的密码值,后删除该结点。重复上述过程,直至所有的结点被释放空间出列。2.输入输出形式及输入值范围:程序运行后提示用户输入总人数。输入人数n后,程序显示提示信息,提示用户输入第i个人的密码,在输入达到预定次数后自动跳出该循环。程序显示提示信息,提示用户输入初始密码,密码须为正整数且不大于总人数。 3.输出形式提示用户输入初始密码,程序执行结束后会输出相应的出列结点的顺序,亦即其编号。用户输入完毕后,程序自动运

文档评论(0)

1亿VIP精品文档

相关文档