1:有n個人圍成一圈,第乙個人從1開始報數,報到m的人出列,求最後乙個出列的人, 約瑟夫環問題。
public void testtest() ;
int m = 10;
int length;
int m;
while ((length = people.length) != 1) else
string temp = new string[length - 1];
// 把m之後的人放到前面,因為m之後的重新開始從1開始,
// m-1這要考慮陣列是從0開始的,而數數是從1開始的,然後資料的拷貝是從m開始的
// 比方說5個人,數到4出局,第5個人開始為1,就陣列而言是標記為4開始為1,拷貝的長度為1個
system.arraycopy(people, m, temp, 0, length - m);
// 比方說5個人,4出局,第5個排到第一位,然後依次是原先的1,2,3
system.arraycopy(people, 0, temp, length - m, m - 1);
// 重新排序,重新開始
people = temp;
} system.out.println(people[0]);
}
最簡單但是最難懂的方法:
f(1,m)=0
f(n,m)=(f(n-1,m)+m)%n
public int find(int n, int m)
return r + 1;
}
面試程式設計題整理
1.輸入c寫乙個輸入的整數,倒著輸出整數的函式,要求用遞迴方法 要求用遞迴的方法對乙個整數進行倒敘 include void func int n else func n int main 2.編寫乙個函式,作用是把乙個char組成的字串迴圈右移n個。比如原來的是 abcdefgh 如果n 2,移位...
面試程式設計題練習
在乙個二維陣列中 每個一維陣列的長度相同 每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。解題思路 利用二維陣列由上到下,由左到右遞增的規律,那麼選取右上角或者左下角的元素a row col 與tar...
js陣列經典面試程式設計題
春招,秋招甚至是實習,多多少少會面臨一些基礎的程式設計題,這些程式設計題除了一些資料結構的典型情景,但是不能忽略,小看的也有一些基礎程式設計題,如最簡單的陣列結構就有一些經典的程式設計題,這裡進行簡要的總結。function char num return arr 思路2 var arr2 1,2,...