迴圈鍊錶 Josephu

2021-10-05 01:40:25 字數 1054 閱讀 1664

測試方法:

public class josepfu

}

鍊錶的建立、遍歷、josephu實現

class circlesinglelinkedlist

boy curboy=null;//定義乙個指標變數

for(int i=1;i<=nums;i++)else}}

//遍歷鍊錶

public void showlist()

boy curboy=first;//定義輔助變數

while (true)

curboy=curboy.getnext();//指標變數後移}}

//小孩出圈的演算法

/** startnum:要開始的編號

* count:數幾下停止

* nums:小孩總數

* */

public void out(int startnum,int count,int nums)

boy helper=first;

while (true)

helper=helper.getnext();

}//在報數前,讓first和helper變數移動(startnum-1)次

for(int i=0;i//迴圈,讓first和helper指標同時移動count-1次,然後出圈

while (true)

for(int i=0;isystem.out.println(first.getno());//出圈的小孩的編號

first=first.getnext();

helper.setnext(first);

}system.out.println("最後留在圈中的小孩是:"+first.getno());

}}class boy

public int getno()

public void setno(int no)

public boy getnext()

public void setnext(boy next)

}

迴圈鍊錶模擬約瑟夫(josephu)問題

約瑟夫環 約瑟夫問題 是乙個數學的應用問題 已知n個人 以編號1,2,3 n分別表示 圍坐在一張圓桌周圍。從編號為k的人開始報數,數到m的那個人出列 他的下乙個人又從1開始報數,數到m的那個人又出列 依此規律重複下去,直到圓桌周圍的人全部出列。class boypublic intgetno pub...

約瑟夫 環 問題 Josephu 單向環形鍊錶

建立人 wdl 建立時間 2021 3 19 描述 public class josepfu 建立乙個環形的單向鍊錶 class circlesinglelinkedlist boy curboy null 輔助指標,幫助我們構建環形鍊錶 使用for來建立我們的環形鍊錶 for int i 1 i ...

迴圈鍊錶,雙向鍊錶

迴圈鍊錶 迴圈鍊錶與順序鍊錶之間的區別 迴圈鍊錶最後乙個資料的next指標域不為空,而是指向頭結點,其他基本操作大體相同,只是在判斷表結束的條件變為判斷節點的引用域是否為頭引用 雙向鍊錶 author neosong date oct 10,2017 4 43 01 pm program of in...