Java 题解 | #旋转位置的特定牛#
旋转位置的特定牛
https://www.nowcoder.com/practice/4872ba1fef224bd382b49a5958d996ab
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param nums int整型一维数组 * @param target int整型 * @return int整型 */ public int search (int[] nums, int target) { // write code here if (target <= nums[0]) { for (int i = 0; i < nums.length; i++) { if (target == nums[i]) return i; } } else { for (int j = nums.length - 1; j >= 0; j--) { if (target == nums[j]) return j; } } return -1; } }
Java编程语言。
这道题考察的是在一个整型数组中寻找目标元素的索引。给定一个整型数组 nums
和一个目标值 target
,要求返回目标值在数组中第一次出现的索引(如果存在)或者最后一次出现的索引(如果不存在)。
代码的解释如下:
- 判断目标值 target 是否小于等于数组的第一个元素 nums[0],如果是,则从数组的第一个元素开始遍历,通过循环判断每个元素是否等于目标值 target,如果相等则返回当前索引。
- 如果目标值 target 大于数组的第一个元素 nums[0],则从数组的最后一个元素开始逆向遍历,通过循环判断每个元素是否等于目标值 target,如果相等则返回当前索引。
- 如果无论从正向还是逆向遍历都没有找到目标值,那么最后返回 -1,表示目标值在数组中不存在。