存在重复元素2

此博客连接:https://www.cnblogs.com/ping2yingshi/p/14054440.html

存在重复元素2

题目链接:https://leetcode-cn.com/problems/contains-duplicate-ii/submissions/

题目

给定一个整数数组和一个整数 k,判断数组中是否存在两个不同的索引 i 和 j,使得 nums [i] = nums [j],并且 i 和 j 的差的 绝对值 至多为 k。

 

示例 1:

输入: nums = [1,2,3,1], k = 3
输出: true
示例 2:

输入: nums = [1,0,1,1], k = 1
输出: true
示例 3:

输入: nums = [1,2,3,1,2,3], k = 2
输出: false

题解

思路:用双重循环,从前向后变量数组,判断数组中相等数字的下标差值是否有和k相等的,如果有则返回差值,如果一直没有,则返回false。

方法

       1.双重循环。

       2.判断数组中相等数组的差值是否小于等于k。

代码

class Solution {
    public boolean containsNearbyDuplicate(int[] nums, int k) {
         for(int i=0;i<nums.length-1;i++){
             for(int j=i+1;j<nums.length;j++)
             {
                 if((nums[i]==nums[j])&&(j-i<=k))
                    return true;
             }
          }
          return false;
    }
}

 

posted @ 2020-11-28 22:01  萍2樱释  阅读(103)  评论(0编辑  收藏  举报