没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
试读
5页
约瑟夫环的问题描述 问题描述:编号为1,2… n的n个人按顺时针方向围坐一圈,每人持有一个密码(正整数)。一开始任选一个正整数作为报数的上限值m,从第一个人开始按顺时针方向自1开始顺序报数,报到m时停止报数,报m的人出列,将他的密码作为新的m值,从他的顺时针方向上的下一个开始重新从1报数,如此下去,直至所有人全部出列为止,设计一个程序求出出列顺序。 基本要求: ⑴.利用单循环链表作为存储结构模拟此过程; ⑵.键盘输入总人数、初始报数上限值m及各人密码; ⑶.按照出列顺序输出各人的编号。
资源推荐
资源详情
资源评论
#include "stdlib.h"
#include "iostream.h"
#include "stdio.h"
class ysfpass
{
public:
int num;
int pass;
ysfpass *next;
ysfpass *pre;
ysfpass(int i,int j)
{
num=i;pass=j;}
ysfpass()
{}
};
void yyssff(ysfpass *y,int number,int password)
{
int xuhao=1;
while(number!=0)
{
if(xuhao==password)
{
cout<<"第";cout<<number;cout<<'';
password=y->pass;
xuhao=1;
number--;
y->pre->next=y->next;
y->next->pre=y->pre;
y=y->next;
}
y=y->next;
xuhao++;
}
}
void main()
{char m_num,m_pass;
cin>>m_num;
cin>>m_pass;
ysfpass* curr;ysfpass* pre;
资源评论
- zhengdingzhongxue2013-06-17不错,值得一看
- czh3618849472014-12-22简直好!约瑟夫环实验参考这个之后一下就明白了不少!
huhuwang_1985
- 粉丝: 1
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功