昨天晚上友人讓我幫其除錯程式,關於約瑟夫問題的乙個程式。本人孤陋寡聞,之前沒有聽過約瑟夫問題(亦或是聽過但忘了),所以瞬間一頭霧水。在友人大致講解了思路之後,大概清楚了這個約瑟夫問題是要幹什麼了。
以下是本人親自寫的關於友人所提要求的程式,為了對抗自己的健忘症,所以還是記下來吧。
#include#includeusing namespace std;
struct node
};void create(node** head,int n)
*head=new node(1);
node* temp=*head;
for(int i=1;im_next=new node(i+1);
temp=temp->m_next;
} temp->m_next=*head;
}void ysf_loop(node* head,int start,int step)
while(curr->m_next!=curr)
coutprev->m_next=curr->m_next;
delete curr;
curr=prev->m_next;
} coutnum>>start>>step;
node* head;
create(&head,num);
ysf_loop(head,start,step);
system("pause");
return 0;
}
約瑟夫問題 約瑟夫環
約瑟夫 問題 有時也稱為約瑟夫斯置換,是乙個出現在電腦科學和數學中的問題。在計算機程式設計的演算法中,類似問題又稱為約瑟夫環。又稱 丟手絹問題 據說著名猶太歷史學家 josephus有過以下的故事 在羅馬人占領喬塔帕特後,39 個猶太人與josephus及他的朋友躲到乙個洞中,39個猶太人決定寧願死...
約瑟夫問題 約瑟夫環
約瑟夫問題 有時也稱為約瑟夫斯置換,是乙個出現在電腦科學和數學中的問題。在計算機程式設計的演算法中,類似問題又稱為約瑟夫環。又稱 丟手絹問題 據說著名猶太歷史學家 josephus有過以下的故事 在羅馬人占領喬塔帕特後,39 個猶太人與josephus及他的朋友躲到乙個洞中,39個猶太人決定寧願死也...
約瑟夫問題
這是17世紀的法國數學家加斯帕在 數目的遊戲問題 中講的乙個故事 15個教徒和15 個非教徒在深海上遇險,必須將一半的人投入海中,其餘的人才能倖免於難,於是想了乙個辦法 30個人圍成一圓圈,從第乙個人開始依次報數,每數到第九個人就將他扔入大海,如此迴圈進行直到僅餘15個人為止。問怎樣排法,才能使每次...