LeetCode2057 值相等的最小索引

发布于:2025-02-11 ⋅ 阅读:(83) ⋅ 点赞:(0)

编程求解:满足特定条件的最小下标

在编程的世界里,数组的处理是一项非常基础且重要的任务。今天我们来探讨一道有趣的数组相关题目:给定一个下标从 0 开始的整数数组 nums,我们需要返回 nums 中满足 i mod 10 == nums[i] 的最小下标 i;如果不存在这样的下标,则返回 -1。这里的 x mod y 表示 x 除以 y 的余数。

一、解题思路

为了找到满足条件的最小下标,我们可以采用遍历数组的方法。从数组的第一个元素开始,依次检查每个元素的下标 i 是否满足 i mod 10 == nums[i] 这个条件。一旦找到符合条件的下标,就立即返回该下标,因为我们要找的是最小下标。如果遍历完整个数组都没有找到符合条件的下标,那么就返回 -1。

二、代码实现

class Solution {
    public int smallestEqual(int[] nums) {
        for (int i = 0; i < nums.length; i++) {
            // 判断当前下标是否满足条件
            if (i % 10 == nums[i]) {
                return i;
            }
        }
        return -1;
    }
}

public class Main {
    public static void main(String[] args) {
        Solution solution = new Solution();

        // 测试用例1
        int[] nums1 = {0, 1, 2};
        int result1 = solution.smallestEqual(nums1);
        System.out.println("测试用例1的结果为: " + result1);

    }
}

在这段代码里呀,smallestEqual 方法接收一个整数数组 nums 作为参数呢。然后通过 for 循环来遍历数组,循环的变量 i 就是数组元素对应的下标啦。在循环体里面呀,用 i % 10 == nums[i] 这个条件表达式去判断当前下标 i 是否满足咱们题目里要求的条件哦。要是满足了,就直接通过 return 语句把这个下标 i 返回出去啦。要是整个 for 循环都结束了,也就是遍历完整个数组了,都还没找到符合条件的下标呢,那就执行最后的 return -1,按照题目要求返回 -1 。

这道题目虽然看起来不是特别复杂,但它其实很好地考查了咱们对 Java 数组遍历、下标操作以及条件判断这些基础知识的掌握程度哦。在实际的 Java 编程中呀,像这样处理数组的逻辑经常会用到呢,希望通过这篇博客的详细讲解,能帮助大家更好地理解和掌握这类问题的解决方法,让大家在 Java 编程的道路上越走越顺呀。

你要是还有别的想法,比如想要优化这个代码呀,或者添加更多功能,都可以继续动手试试看哦。希望这篇博客对你有所帮助呀!