2019-05-07 13:21:42 3308瀏覽
今天千鋒扣丁學(xué)堂Java培訓(xùn)老師給大家分享一篇關(guān)于Java通過索引值實現(xiàn)約瑟夫環(huán)算法的詳細(xì)介紹,下面我們一起來看一下吧。
import java.util.ArrayList; import java.util.Scanner; public class 約瑟夫環(huán)3 { public static void main(String[] args) { /*問題描述:N個人圍成一圈,從第一個人開始報數(shù),報到m的人出圈, 剩下的人繼續(xù)從1開始報數(shù),報到m的人出圈;如此往復(fù),直到所有人出圈*/ Scanner sc = new Scanner(System.in); int n = sc.nextInt();//n個人 int m = sc.nextInt();//m號出列 int count = m; ArrayList<Integer> list = new ArrayList<Integer>(); for(int i = 1 ; i <= n ; i++){ list.add(i); } for(; ;){ if(list.size() == 1){ System.out.print(list.get(0) + " "); return; } if(m <= list.size()){ System.out.print(list.get(m-1) + " "); list.remove(m-1); m += count -1; } if(list.size() < m){ m = m - list.size(); } } } }
想要學(xué)好Java開發(fā)小編給大家推薦口碑良好的扣丁學(xué)堂,扣丁學(xué)堂有專業(yè)老師制定的Java學(xué)習(xí)路線圖輔助學(xué)員學(xué)習(xí),此外還有與時俱進(jìn)的Java課程體系和Java視頻教程供大家學(xué)習(xí),想要學(xué)好Java開發(fā)技術(shù)的小伙伴快快行動吧??鄱W(xué)堂Java技術(shù)交流群:850353792。
【關(guān)注微信公眾號獲取更多學(xué)習(xí)資料】 【掃碼進(jìn)入Python全棧開發(fā)免費公開課】
查看更多關(guān)于“Java開發(fā)資訊”的相關(guān)文章>>