剑指offer面试题62:圆圈中最后剩下的数字(Java 实现)

题目:0, 1, … , n-1 这n个数字排成一个圈圈,从数字0开始每次从圆圏里删除第m个数字。求出这个圈圈里剩下的最后一个数字。 测试用例: 1、输入的 m 小于 n;输入的 m 大于或者等于 n 。 2、负面测试:圆圈中有 0 个数字 方法一:经典的解法, 用环形链表模拟圆圈。 时间复杂度为 O(mn),空间复杂度为 O(n)。 思路:创建一个总共有n 个结点的环形链表,然后每次在这个链表中
相关文章
相关标签/搜索