《约瑟夫双向生死游戏》数据结构 课程设计

《约瑟夫双向生死游戏》数据结构 课程设计

目 录

1需求分析
1.1 问题描述
1.2 问题要求
1.3 设计思路
2详细设计
2.1抽象数据类型定义
2.2存储结构设计
2.3算法设计
2.4功能模块设计
3代码实现
3.1 函数清单
3.2 主函数
4运行与测试
5总结

参考文献
附录(代码)

1需求分析

1.1 问题描述
约瑟夫双向生死游戏是在约瑟夫生者死者游戏的基础上,正向计数后反向计数,然后再正向计数。具体描述如下:30个旅客同乘一条船,因为严重超载,加上风高浪大,危险万分;因此船长告诉乘客,只有将全船一半的旅客投入海中,其余人才能幸免遇难。无奈,大家只得同意这种办法,并议定30个人围成一圈,由第一个人开始,顺时针依次报数,数到第9人,便把他投入大海中,然后从他的下一个人数起,逆时针数到第5人,将他投入大海,然后从他逆时针的下一个人数起,顺时针数到第9人,再将他投入大海,如此循环,直到剩下15个乘客为止。问哪些位置是将被扔下大海的位置。

1.2 问题要求
问题:
(1)成功构建一个双向循环链表;
(2)通过循环进行正向和反向计数操作;
(3)确定需要删除的位置和设置并删除该位置;

你可能感兴趣的:(课程设计,数据结构)