約瑟夫(鍊錶) C語言)

2021-10-01 13:33:03 字數 684 閱讀 6850

用鍊錶實現約瑟夫問題:13個人圍成一圈,從第1個人開始順序報號1,2,3。凡報到3者退出圈子。找出最後留在圈子中的人原來的序號。

【輸入要求】

【輸出要求】

【輸出樣例】

369

122711

41051

8the last one is 13

#include

#include

#define len sizeof(listnode)

typedef

struct su

listnode;

listnode *

creat_listnode()

p2->next=h->next;

return h;

}void

delete_listnode

(listnode *p)

//刪除節點

void

josephus

(listnode *h)

}printf

("\nthe last one is %d\n"

,p->data);}

intmain()

約瑟夫問題(C語言 迴圈鍊錶)

實現 如下 include includetypedef struct nodelnode,linklist void josephus int n,int m,int k p data i 編號 if list null list p else x next p 將x和p節點串起來 x p x指標...

約瑟夫環 C語言單項迴圈鍊錶

約瑟夫環 c語言單項迴圈鍊錶 約瑟夫環 問題描述 約瑟夫問題的一種描述是 編號為1,2,n的n個人按順時針方向圍坐一圈,每人持乙個密碼 正整數 一開始任選乙個正整數作為報數上限值m,從第乙個人開始按順時針方向自1開始順序報數,報到m時停止報數。報m的人出列,將他的密碼作為新的m值,從他在順時針方向上...

約瑟夫環 C語言 單迴圈鍊錶

約瑟夫環 問題描述 編號為1,2,n的n個人圍坐一圈,每人持乙個密碼 正整數 一開始任選乙個正整數作為報數上限值m,從第乙個人開始自1開始順序報數,報到m時停止。報m的人出列,將他的密碼作為新的m值,從他的下乙個人開始重新從1報數,如此下去,直至所有人全部出列為止。試設計乙個程式求出列順序。問題分析...