更新于 2021 年 5 月 18 日 11:57:26
425 次查看
假设我们有一个名为 nums 的数组,我们需要检查该数组是否最初按非递减顺序排序,然后旋转了一些位置(可能是零)还是没有。数组中也可能存在重复项。因此,如果输入类似于 nums = [12, 15, 2, 5, 6, 9],则输出将为 True,因为它向右旋转了两个位置。为了解决这个问题,我们将遵循以下步骤:j := 0当 j < nums 大小 - 1 且 nums[j] < nums[j + 1] 时,j := j + 1如果 j 等于 nums 大小 - 1,则返回 True如果 nums[j] 大于 nums[j + 1],则对于 i 从 0 到 j,执行:如果 nums[i] 大于 nums[i + 1],则返回 False如果 res[i] 大于 res[i + 1],则返回 False返回 True示例(Python)让我们看看以下实现... 阅读更多