12約瑟夫環

2021-07-27 03:38:34 字數 783 閱讀 5101

/*

2012

一群人(排列序號從1到n,n可設定)圍成一圈,

按一定規則出列,剩餘的人仍然圍成一圈.出列規則

是順著1到n的方向對圈內的人從1到c計數(c可設定),

圈內計數為c的人出列,剩餘的人重新計數,按上述規

則,讓圈內所有的人出列.請程式設計順序輸出出列編號的

序列*/

#include

#include

typedef

struct node * listnode;

struct node

;listnode createcirclelist(listnode head,int n)

p->next=head->next;//這句是建立迴圈的關鍵,不要漏了

free(head);//建好迴圈列表之後,釋放掉沒有資料的頭結點

return p;//返回的迴圈鍊錶的最後乙個結點,因為這樣數數的時候,1就可以代表第乙個結點;在主函式中有用

}int main()

p=createcirclelist(head,n);

int i;

while(p!=p->next)

temp=p->next;

printf("%d->",temp->data);

p->next=temp->next;

free(temp);

}printf("%d",p->data);//列印出剩下的最後乙個結點

return

0;}

約瑟夫問題 約瑟夫環

約瑟夫 問題 有時也稱為約瑟夫斯置換,是乙個出現在電腦科學和數學中的問題。在計算機程式設計的演算法中,類似問題又稱為約瑟夫環。又稱 丟手絹問題 據說著名猶太歷史學家 josephus有過以下的故事 在羅馬人占領喬塔帕特後,39 個猶太人與josephus及他的朋友躲到乙個洞中,39個猶太人決定寧願死...

約瑟夫問題 約瑟夫環

約瑟夫問題 有時也稱為約瑟夫斯置換,是乙個出現在電腦科學和數學中的問題。在計算機程式設計的演算法中,類似問題又稱為約瑟夫環。又稱 丟手絹問題 據說著名猶太歷史學家 josephus有過以下的故事 在羅馬人占領喬塔帕特後,39 個猶太人與josephus及他的朋友躲到乙個洞中,39個猶太人決定寧願死也...

Josephu 約瑟夫 約瑟夫環 問題

version 2019年08月08日 public class josepfu 建立乙個環形的單向鍊錶 class circlesinglelinkedlist 輔助指標,幫助構建環形鍊錶 boy curboy null for int i 1 i nums i else 遍歷當前的環形鍊錶 pu...