题目: n个数字(0,1,…,n-1)形成一个圆圈,从数字0开始, 每次从这个圆圈中删除第m个数字(第一个为当前数字本身,第二个为当前数字的下一个数字). 当一个数字删除后,从被删除数字的下一个继续删除第m个数字. 求出在这个圆圈中剩下的最后一个数字. 我的思路: 这是个很经典的环形问题,最优的方案时间复杂度是O(n):先构建递推公式,再使用循环或者递归都能轻松求解, 网上的教程很少能把这个递推公式的由来描述清楚,所以我在这里加入我的一些理解. 由于我们要求解的是n个元素,第m个数字,要找到最后