LeetCode Minimum Size Subarray Sum Solution Explained - Java

แชร์
ฝัง
  • เผยแพร่เมื่อ 9 พ.ย. 2024

ความคิดเห็น • 66

  • @harshavardhanreddy7996
    @harshavardhanreddy7996 4 ปีที่แล้ว +12

    Very well explained...two pointers from front concept - sliding window...!!

    • @deeproy2719
      @deeproy2719 2 ปีที่แล้ว

      many places I am seeing that sliding window is being treated as dp problem

  • @pl5778
    @pl5778 4 ปีที่แล้ว +4

    great vid. I like how you explained the 2 pointers is not from start and end, but its both front the left. I think that concept is really helpful.

  • @CyberMew
    @CyberMew 3 ปีที่แล้ว +5

    Good explanation, I had the intuition to do sliding window using 2 pointers, but could not think of doing a while loop inside the forloop, and was fixated on moving both the right and left in the same loop, and was left figuring out why it is not working the way I want. ugh.. I think it was because I didn't want it to iterate so much, because it feels like O(n^2).

    • @PeachHeartBlog
      @PeachHeartBlog 2 ปีที่แล้ว +3

      Both left and right points will only iterate list once. After the left items are popped up, they won't loop again, So still O(n)

  • @faizanusmani2200
    @faizanusmani2200 3 ปีที่แล้ว +3

    Amazing solution. I was just very close to solving it but just could not think about the inner while loop

  • @sumeetsapla
    @sumeetsapla 2 ปีที่แล้ว

    Thanks Nick for explaining in simple way

  • @deepakbisht7764
    @deepakbisht7764 2 ปีที่แล้ว

    You made things looks so easy. thanks for the great video

  • @jaybabaofficial
    @jaybabaofficial 3 ปีที่แล้ว

    Loved this solution and explanation

  • @gregoryrobertson
    @gregoryrobertson ปีที่แล้ว

    Thank you for creating this video 👍

  • @yalansun4382
    @yalansun4382 3 ปีที่แล้ว

    glad i found this video, well explained. thank you so much.

  • @jatinbhatoya8420
    @jatinbhatoya8420 3 ปีที่แล้ว

    crystal clear explanation

  • @edwardnewgate2198
    @edwardnewgate2198 5 ปีที่แล้ว +2

    Amazing Solution!

  • @jakubk7158
    @jakubk7158 3 ปีที่แล้ว

    int[] arr= new int[]{5,2,2,1,1,4}; target = 9 output = 3 , should be 2 [5,4] , anyway this solution passes leetcode tests :)

    • @dcodernz
      @dcodernz 10 หลายเดือนก่อน

      But 5,4 isn't a sub array. It's a sub sequence.

  • @OMFGallusernamesgone
    @OMFGallusernamesgone 2 ปีที่แล้ว

    What happens if one of the input numbers was much larger than s, such as 1000, you would need to check if left !> i

  • @abishekkachroo938
    @abishekkachroo938 5 ปีที่แล้ว +5

    u can never be rusty ... hahaha
    I have got the rust from past 25 years

  • @sanketkoli8641
    @sanketkoli8641 2 ปีที่แล้ว

    Very good solution. Thank a lot! :)

  • @raushanraj_99
    @raushanraj_99 ปีที่แล้ว

  • @sebastianbaptiste4905
    @sebastianbaptiste4905 4 ปีที่แล้ว +1

    You shouldn't ignore your Apple updates

  • @anoopkumar8732
    @anoopkumar8732 3 ปีที่แล้ว +6

    the solution is a little buggy. on line 12, he should add left

  • @SHASHANKRUSTAGII
    @SHASHANKRUSTAGII 3 ปีที่แล้ว +3

    I dont know why, but i also thought of this method, before watching the video, my only issue is to develop the code. please guide me, i can see the way problem should be solved, but not able to code.

  • @chaoschao9432
    @chaoschao9432 5 ปีที่แล้ว +3

    good one, thx

  • @alankuo2316
    @alankuo2316 5 ปีที่แล้ว +3

    nice explain!

  • @nandanimadhukar
    @nandanimadhukar 4 ปีที่แล้ว +1

    good explanation!

  • @arijitroy8390
    @arijitroy8390 3 ปีที่แล้ว

    Its called sliding window

  • @kunalkheeva
    @kunalkheeva ปีที่แล้ว

    Appreciate you!

  • @suryanshrajdubey
    @suryanshrajdubey 5 ปีที่แล้ว +2

    Thanks for the video!!

  • @harini3191
    @harini3191 5 ปีที่แล้ว +2

    Video is awesome!. Please create a video for implementing binary search using two pointers method for this problem

    • @siobhanahbois
      @siobhanahbois 4 ปีที่แล้ว

      The time complexity for this one will be O(n log n), is that right?

    • @siobhanahbois
      @siobhanahbois 4 ปีที่แล้ว

      A J even with binary search? If yes, do you know how to get to O(n log n)?

    • @aj9706
      @aj9706 4 ปีที่แล้ว +2

      @@siobhanahbois binary search requires array to be sorted. That's not applicable in this problem.

  • @siobhanahbois
    @siobhanahbois 4 ปีที่แล้ว

    This is O(n) right? What about the follow up question: "If you have figured out the O(n) solution, try coding another solution of which the time complexity is O(n log n)."

    • @ashwani4569
      @ashwani4569 4 ปีที่แล้ว +1

      This is O(nlogn). There is inner while loop.

    • @arjunreddy3996
      @arjunreddy3996 4 ปีที่แล้ว +6

      @@ashwani4569 lol no, it's O(N)

    • @siobhanahbois
      @siobhanahbois 4 ปีที่แล้ว

      Did any of you guys figure out the O(n log n) solution or did you find a video solving it in O(n log n) time?

    • @pavithraradhakrishnan8229
      @pavithraradhakrishnan8229 4 ปีที่แล้ว +1

      @@siobhanahbois O(n log n) would be using binary search

    • @grandstarchief3226
      @grandstarchief3226 4 ปีที่แล้ว +1

      O(n log n) is prefixSum + binary search

  • @lifeofme3172
    @lifeofme3172 4 ปีที่แล้ว +2

    Beautiful 👏

  • @davegould4940
    @davegould4940 4 ปีที่แล้ว +1

    Slidin' window

  • @austinpereira9204
    @austinpereira9204 2 ปีที่แล้ว

    Its more like sliding window

  • @pavithraradhakrishnan8229
    @pavithraradhakrishnan8229 4 ปีที่แล้ว +1

    wow thank you

  • @adarsh9555
    @adarsh9555 3 ปีที่แล้ว

    great , i liked it

  • @joydeep_
    @joydeep_ 5 หลายเดือนก่อน

    My O(1) solution in JS
    ```
    function minSubArrayLen(arr, n) {
    if (!arr.length) return undefined
    let i=0
    let j=0
    let tmpSum = arr[i]
    let minLen = Infinity
    while(i < arr.length && j < arr.length){
    if (i === j){
    if (tmpSum >= n){
    minLen = Math.min(minLen, (j-i)+1)
    tmpSum-= arr[i]
    i++
    j++
    tmpSum+= arr[j]
    continue
    }
    if (tmpSum < n){
    j++
    tmpSum+= arr[j]
    continue
    }
    }
    if (tmpSum >= n){
    minLen = Math.min(minLen, (j-i)+1)
    tmpSum-= arr[i]
    i++
    continue
    }
    if (tmpSum < n){
    j++
    tmpSum+= arr[j]
    continue
    }
    }
    return minLen === Infinity ? 0 : minLen;
    }
    ```

  • @artsysoul1050
    @artsysoul1050 2 ปีที่แล้ว

    can any one tell what is the time complexity ??

  • @tensorflaw
    @tensorflaw 3 ปีที่แล้ว

    "Remind me tomorrow"

  • @bhavyanayyer3391
    @bhavyanayyer3391 3 ปีที่แล้ว +4

    how one can think of this solution without looking at the soln

    • @rajeevmohan9049
      @rajeevmohan9049 3 ปีที่แล้ว

      If u this type of question previously..😊

    • @cpwithsundar
      @cpwithsundar 3 ปีที่แล้ว

      @@dashrathsinghkaviya it isn't related to the qn asked? if we visit his channel......will we get the ans??

    • @aj9706
      @aj9706 3 ปีที่แล้ว

      That's an interesting question ⁉️

  • @mnchester
    @mnchester 3 ปีที่แล้ว

    great vid

  • @akshitgarg09
    @akshitgarg09 3 ปีที่แล้ว

    love you man

  • @harinijeyaraman8789
    @harinijeyaraman8789 4 ปีที่แล้ว

    Isn't this slightly similar to sliding window concept ?

    • @TheGianaJinx
      @TheGianaJinx 4 ปีที่แล้ว +1

      This is sliding window. The window can vary in size as it moves over the structure.

    • @harinijeyaraman8789
      @harinijeyaraman8789 4 ปีที่แล้ว +1

      @@TheGianaJinx Basically a variable window-sized sliding window. Thanks for confirming !

  • @Karthik__S_554
    @Karthik__S_554 7 หลายเดือนก่อน

    wow

  • @vk1618
    @vk1618 4 ปีที่แล้ว

    Other solution

  • @zlzlinkinpark5337
    @zlzlinkinpark5337 4 ปีที่แล้ว

    awesome

  • @madhavram7138
    @madhavram7138 4 ปีที่แล้ว

    HELP! How will the return statement look like in Python?

    • @madhavram7138
      @madhavram7138 4 ปีที่แล้ว +1

      I got, it should be:
      if result == math.inf: return 0
      return result