package com.xiaowen;
public class demo4
}class child
}//環形鍊錶
class cyclink
//設定鍊錶大小
public void setlen(int len)
//設定從第幾個人開始數數
public void setk(int k)
//開始play
public void play()
while(this.len!=1)
system.out.println("第"+count+"次:"+temp.no);
count++;
//找到要出圈的前乙個小孩
child temp2=temp;
while(temp2.nextchild!=temp)
//3、將數到m的小孩退出圈
temp2.nextchild=temp.nextchild;
//讓temp指向下乙個數數的小孩
temp=temp.nextchild;
this.len--;
}//最後乙個小孩
system.out.println("第"+count+"次:"+temp.no);
}//初始化環形鍊錶
public void createlink()
else
else}}
}//列印該環形鍊錶
public void show()
while(temp!=this.firstchild );
system.out.println();}}
採用Ruby 實現丟手帕問題
題目 有n個人圍成一圈,順序排號。從第乙個人開始報數 從1到3報數 凡報到3的人退出圈子,問最後留下的是原來第幾號的那位。實現思想 將陣列中的所有元素都定義為1,從第乙個開始累加求sum,設計乙個下標i,如果sum 3,則將進3的元素定為0,sum 0,繼續求和,直到最後乙個元素 判斷如果是最後乙個...
用PHP實現丟手帕問題(約瑟夫問題)
問題描述 有n個人圍成一圈,然後從任意指定的乙個 人那裡為起點,以m個人為單位,每轉m個人第m個人被殺死。求最後不會被殺死的人。遺留問題 在此用php做簡單的實現,php中對遞迴有100次的深度限制,所以在此不用遞迴,用迴圈 php中處理陣列的函式比較多,所以採用順序表 陣列 順序表刪除元素比較複雜...
約瑟夫問題 也叫丟手帕問題
約瑟夫問題 也叫丟手帕問題 不涉及很多演算法,但卻是乙個很好的邏輯訓練題!也是acm訓練oj上的一道題 我用陣列模擬做了一下 丟手帕問題 約瑟夫問題 include includeint main a i 1 置1 出列 while a i 1 找下乙個開始的位置 i i 1 n 注意死迴圈 beg...