#include
#include
#include
using namespace std;
#define elemtype string
typedef struct lnode
lnode,* listq;
//迴圈鍊錶初始化 頭針指lq向最後乙個資料
bool initiallist(listq& lq)
itoa(length,lengths,10);//int轉化為string型別 itoa(int,char, 進製)
lq->next->info=lengths; //頭結點的資料單存放表長資訊
return true;
}bool outputlist(listq lq) //輸出函式
coutvoid josephus(listq lq, int m) //約瑟夫函式 m為間隔數
}del=pos;
pos=pos->next; //指向下一人
delelnode(lq,pre,del); //刪
while(pos==lq->next) //如果下一人是頭結點 pre和pos一定要同時後移 如果pos不指向頭結點 則pre不必後移 切記!!!!
outputlist(lq);}}
void delelist(listq& lq) //這函式沒用
delete(p);
}int main()
資料結構之約瑟夫迴圈鍊錶
public class test public class joseph 如果不是首節點 node newnode newnode i,null 建立乙個新節點 pre.next newnode 為當前節點儲存下個節點 pre newnode 將新節點設為當前節點 if i total int c...
C 迴圈鍊錶之約瑟夫問題
前天學了迴圈鍊錶,一直再沒管,今天來應用一下,感覺自己寫麻煩了 迴圈鍊錶與單鏈表的區別就在於表尾指標不是null,而是等於first。這就產生了乙個好處就是可以從任何節點開始訪問到所有節點。includeusing namespace std struct people class josephus...
資料結構 迴圈單鏈表之約瑟夫問題
約瑟夫問題的由來 據說著名猶太歷史學家 josephus有過以下的故事 在羅馬人占領喬塔特後,39 個猶太人與josephus及他的朋友躲到乙個洞中,39個猶太人決定寧願死也不要被敵人抓到,於是決定了乙個自殺方式,41個人排成乙個圓 圈,由第1個人開始報數,每報數到第3人該人就必須自殺,然後再由下乙...