題目:
問題分析
和約瑟夫問題不同的是,公升級版多了乙個密碼,這個密碼可以從線性表匯入,也就是在建立結點時,有三個區域密碼域password、資料域位置position、指標域next。如下圖所示
**實現:
import ds01.動態陣列.arraylist;
//約瑟夫環公升級版
public
class
upper_josephusloop
size=list.
getsize()
;//人數是list傳進來的個數
this
.m=m;
}//遊戲淘汰函式
public
void
out(
) node del=p.next;
//del存放要刪除的結點
p.next=del.next;
//p所在結點的指標域指向del的下乙個結點(刪除del,沒人指向del,del被**)
p=p.next;
//更新指標p
m=del.password;
//根據題意,m更新
system.out.
print
(del.position+
" ")
;//返回刪除了的結點的位置
size--
;//有效元素個數-1}}
//內部類
private
class
node
public
node
(int password,
int position,node next)
}public
static
void
main
(string[
] args)
}
約瑟夫問題公升級版
編號為1 n的n個人按順時針方向圍坐一圈,每人持有乙個密碼 正整數,可以自由輸入 開始人選乙個正整數作為報數上限值m,從第乙個人按順時針方向自1開始順序報數,報道m時停止報數。報m的人出列,將他的密碼作為新的m值,從他順時針方向上的下乙個人開始從1報數,如此下去,直至所有人全部出列為止。includ...
約瑟夫問題的公升級版
最近寫的乙個約瑟夫問題 建立迴圈單鏈表 p next pre 最後乙個節點指向第乙個結點,形成迴圈鍊錶 return pre void dele linklist l,int m temp p num 當這個人出去時,將他的值作為新密碼 printf 5d p num count s p 鍊錶的刪除...
介面公升級版
介面公升級版 假設乙個介面由2w個子類實現它 假如在介面內加乙個方法 那麼按照定義就要在這所有的子類裡面都實現 所以我們引入新概念 介面裡可以定義普通方法 即這個普通方法可以不被實現 普通方法就要用default實現 介面還可以實現static方法 呼叫是直接由介面.方法名呼叫 inte ce im...