覺得用靜態迴圈鍊錶最划算了。
1、動態鍊錶要動態分配,指標移來移去,釋放指標等等,弄得很煩,容易出錯。
2、用迴圈鍊錶是當然的了。
// ds: 似迴圈靜態鍊錶
#include #include //#include using namespace std;
int kill_you( const int sum = 1, const int distance = 1, const int start = 1)
cout << pi + 1 << ' ';
// 殺掉下標是pi的那個人,即刪除該結點
s[pj] = s[pi]; // pj是pi的前乙個值
pi = s[pi];
} free(s);
cout << endl;
return pi + 1;
}int main()
return 0;
}
p.s. 沒事多寫寫注釋,挺好。
迴圈鍊錶(約瑟夫環)
約瑟夫環是乙個數學的應用問題 已知n個人 以編號1,2,3.n分別表示 圍坐在一張圓桌周圍。從編號為k的人開始報數,數到m的那個人出列 他的下乙個人又從1開始報數,數到m的那個人又出列 依此規律重複下去,直到圓桌周圍的人全部出列。要通過輸入n,m,k三個正整數,來求出列的序列。這個問題採用的是典型的...
迴圈鍊錶應用 約瑟夫環
約瑟夫環是乙個數學的應用問題 已知n個人 以編號1,2,3.n分別表示 圍坐在一張圓桌周圍。從編號為k的人開始報數,數到m的那個人出列 他的下乙個人又從1開始報數,數到m的那個人又出列 依此規律重複下去,直到圓桌周圍的人全部出列。include includetypedef struct node ...
單向迴圈鍊錶 約瑟夫環
寫個約瑟夫環,檢驗一下自己的學習狀況.include define elemtype int typedef struct lnodesqlist void initlist sqlist l,elemtype n void round sqlist l,int m,int n int main v...