题目:n个数字(0,1,…,n-1)形成一个圆圈,从数字0开始,每次从这个圆圈中删除第m个数字(第一个为当前数字本身,第二个为当前数字的下一个数字)。当一个数字删除后,从被删除数字的下一个继续删除第m个数字。求出在这个圆圈中剩下的最后一个数字。
以下使用循环链表实现(循环链表代码见:java实现循环链表):
public void whichIsLast(int m){
// 初始化链表头元素
initLinkedList(0);
// 循环插入1-99到链表中
for (int i = 1; i < 100; i++) {
insertElement(i);
}
//循环删除第M个元素
Element temp = h