<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          ?LeetCode刷題實(shí)戰(zhàn)219:存在重復(fù)元素 II

          共 2714字,需瀏覽 6分鐘

           ·

          2021-03-24 14:00

          算法的重要性,我就不多說了吧,想去大廠,就必須要經(jīng)過基礎(chǔ)知識和業(yè)務(wù)邏輯面試+算法面試。所以,為了提高大家的算法能力,這個公眾號后續(xù)每天帶大家做一道算法題,題目就從LeetCode上面選 !

          今天和大家聊的問題叫做 存在重復(fù)元素 II,我們先來看題面:
          https://leetcode-cn.com/problems/contains-duplicate-ii/

          Given an integer array nums and an integer k, return true if there are two distinct indices i and j in the array such that nums[i] == nums[j] and abs(i - j) <= k.

          給定一個整數(shù)數(shù)組和一個整數(shù) k,判斷數(shù)組中是否存在兩個不同的索引 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


          解題


          利用HashMap數(shù)據(jù)結(jié)構(gòu),每次存入數(shù)值錢先看一下有沒有這個數(shù)了,如果已經(jīng)有了,那么看一下這兩個數(shù)的索引下標(biāo)之差是不是小于等于k的,如果是的話那么久說明找到了,返回true,如果沒有找到就返回false。

          class Solution {
              public boolean containsNearbyDuplicate(int[] nums, int k) {
                  HashMap<Integer,Integer> hm = new HashMap<>();
                  for(int i=0;i<nums.length;i++){
                      if(hm.containsKey(nums[i])){
                          int sub = i - hm.get(nums[i]);
                          if(sub <= k)
                              return true;
                          else
                              hm.put(nums[i],i);
                      }
                      else
                          hm.put(nums[i],i);
                  }
                  return false;
              }
          }


          好了,今天的文章就到這里,如果覺得有所收獲,請順手點(diǎn)個在看或者轉(zhuǎn)發(fā)吧,你們的支持是我最大的動力 。

          上期推文:

          LeetCode1-200題匯總,希望對你有點(diǎn)幫助!

          LeetCode刷題實(shí)戰(zhàn)201:數(shù)字范圍按位與

          LeetCode刷題實(shí)戰(zhàn)202:快樂數(shù)

          LeetCode刷題實(shí)戰(zhàn)203:移除鏈表元素

          LeetCode刷題實(shí)戰(zhàn)204:計數(shù)質(zhì)數(shù)

          LeetCode刷題實(shí)戰(zhàn)205:同構(gòu)字符串

          LeetCode刷題實(shí)戰(zhàn)206:反轉(zhuǎn)鏈表

          LeetCode刷題實(shí)戰(zhàn)207:課程表

          LeetCode刷題實(shí)戰(zhàn)208:實(shí)現(xiàn) Trie (前綴樹)

          LeetCode刷題實(shí)戰(zhàn)209:長度最小的子數(shù)組

          LeetCode刷題實(shí)戰(zhàn)210:課程表 II

          LeetCode刷題實(shí)戰(zhàn)211:添加與搜索單詞

          LeetCode刷題實(shí)戰(zhàn)212:單詞搜索 II

          LeetCode刷題實(shí)戰(zhàn)213:打家劫舍 II

          LeetCode刷題實(shí)戰(zhàn)214:最短回文串

          LeetCode刷題實(shí)戰(zhàn)215:數(shù)組中的第K個最大元素

          LeetCode刷題實(shí)戰(zhàn)216:組合總和 III

          LeetCode刷題實(shí)戰(zhàn)217:存在重復(fù)元素

          LeetCode刷題實(shí)戰(zhàn)218:天際線問題


          瀏覽 49
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  欧美成人视频免费网站 | 亚洲日韩欧美综合热 | 日本黄色片网站一二 | 大香蕉三级 | 插插插91|