Minimum Difference Between Largest and Smallest Value in Three Moves - Leetcode 1509 - Python

  Рет қаралды 9,747

NeetCodeIO

6 күн бұрын

🚀 neetcode.io/ - A better way to prepare for Coding Interviews
🧑‍💼 LinkedIn: www.linkedin.com/in/navdeep-singh-3aaa14161/
🐦 Twitter: neetcode1
⭐ BLIND-75 PLAYLIST: kzbin.info/www/bejne/gX3PiXZ8fJqHpKM
Problem Link: leetcode.com/problems/minimum-difference-between-largest-and-smallest-value-in-three-moves/description/
0:00 - Read the problem
0:30 - Drawing Explanation 1
5:39 - Coding Explanation 1
8:11 - Drawing Explanation 2
12:26 - Coding Explanation 2
leetcode 1509
#neetcode #leetcode #python

Пікірлер: 55
@utkarshdewan8736
@utkarshdewan8736 6 күн бұрын
That was so bloody clever. I just learnt heap a week ago and did not even think that we can use a heap here
@woodylucas
@woodylucas 6 күн бұрын
Python is such a cheatcode it is ridiculous, and it isn't even fair 🤕
@chrischika7026
@chrischika7026 5 күн бұрын
skill issue.
@notcountdankula
@notcountdankula Күн бұрын
Cheat code in which way? Easy syntax?
@chrischika7026
@chrischika7026 Күн бұрын
@@notcountdankula yup and it just looks clean
@aashishbathe
@aashishbathe 6 күн бұрын
Awesome man. Learnt something new today. Nsmallest and nlargest. Thank you!
@MP-ny3ep
@MP-ny3ep 6 күн бұрын
Great explanation as always. Thank you
@kareni7572
@kareni7572 6 күн бұрын
Thanks for showing us previous attempts! Good explanation & 2nd solution was interesting...
@LasTCursE69
@LasTCursE69 5 күн бұрын
"Solution to the most hardest part of this problem is simple, just use a built-in python library" Amazing explanation 👏 -.-
@CuriousAnonDev
@CuriousAnonDev 6 күн бұрын
na bro i am so done i cant fucking solve these questions no matter how much i try shit
@tirasjeffrey2002
@tirasjeffrey2002 6 күн бұрын
one day at a time man, no shame in accepting u cant come up with the solution, how else do we increase our knowledge
@joaopedrocastro4486
@joaopedrocastro4486 5 күн бұрын
its okay bro, just have pacience and try to solve it, if you cant just look a solution and try to solve it another day!
@puneettripathi8418
@puneettripathi8418 5 күн бұрын
doesn't heapifying an array of size n, itself is a process of O(n*log(n)), you perform sink and swim operations that both take O(log(n)) for n elements?
@HuyLe-zx8ko
@HuyLe-zx8ko 6 күн бұрын
brilliant
@chien-yuyeh9386
@chien-yuyeh9386 6 күн бұрын
Nice🎉🎉
@kennycarneal3577
@kennycarneal3577 4 күн бұрын
Just wanted to say I love you bro you're awesome
@NeetCodeIO
@NeetCodeIO 4 күн бұрын
Love you too ❤️
@Anthony-oz1jc
@Anthony-oz1jc 6 күн бұрын
similar idea : class Solution { public: int minDifference(vector& nums) { int n=nums.size(); if(n
@johnniewalkerjohnniewalker2459
@johnniewalkerjohnniewalker2459 6 күн бұрын
same code i developed in java!
@MykolaPavluchynskyi
@MykolaPavluchynskyi 5 күн бұрын
Interesting that if you try to do in java with heaps - it will be more than twice slower. Because with sorting it can be done on int[], without using a collections with all their overhead
@MykolaPavluchynskyi
@MykolaPavluchynskyi 5 күн бұрын
Sorry, it's not actually true, it was because of not optimal updates in heaps, but always adding and removing extra. With extra checks for avoiding non efficient poll/offer - it is actually faster
@adityabhatt4177
@adityabhatt4177 5 күн бұрын
the video and the explaination is awsome..but could you try to code in java or c++
@tirasjeffrey2002
@tirasjeffrey2002 6 күн бұрын
by remove, he means setting it to the min value right? coz you cant actually remove, you can only change it to any val
@HuyLe-zx8ko
@HuyLe-zx8ko 6 күн бұрын
he means we don't need to care about those
@dss963
@dss963 5 күн бұрын
When the lower one incremented to next high or higher element to next lower , there is no point of considering it as we care about diff b/w high and low
@RuslanZinovyev
@RuslanZinovyev 5 күн бұрын
Logically, the solution was obvious but it would take me a lot of time to come up with this: int right = nums.length - 4 + left; btw is it really necessary to sort Heaps? It is supposed to be in the right order out of the box.
@business_central
@business_central 5 күн бұрын
can someone clarify further why the sorted in the heaps solutions? doesn't adding the sorting will end us at nlogn ?
@mayursmahajan
@mayursmahajan 5 күн бұрын
It would have been nlogn if we sorted nums. We are not sorting nums but sorting a sub arr of size 4 that we got from the heap. Thus their sorting will be considered as Constant time
@business_central
@business_central 5 күн бұрын
@@mayursmahajan Thank you very much! Now I get it! Thanks!
@notcountdankula
@notcountdankula Күн бұрын
​@@mayursmahajanbut we are heapifying the entire array. So it will take nlogn anyways
@tarekradwan8661
@tarekradwan8661 Күн бұрын
The question is not removing could you pleaSe fix that. I know it is still the same but just confuses
@pastori2672
@pastori2672 6 күн бұрын
multiple choice problem detected brute force selected 🗿
@roderickli6505
@roderickli6505 5 күн бұрын
is heap actually a N operation? i feel like its not and when i view the time complexity on leetcode its n lgn
@chrischika7026
@chrischika7026 5 күн бұрын
its only 4 elements so its O(N)
@shnorlaxzz395
@shnorlaxzz395 5 күн бұрын
I think the question should be more clear and provide more details
@MrSpeedFrk
@MrSpeedFrk 6 күн бұрын
I guess I'm the only one that found this explanation confusing sigh
@samridhshubham8109
@samridhshubham8109 6 күн бұрын
Wer u able to understand? Or need help?
@bullyversal5313
@bullyversal5313 5 күн бұрын
Nah I think it's pretty much understandable
@chrischika7026
@chrischika7026 5 күн бұрын
nah its lightwork
@antondonohue8943
@antondonohue8943 6 күн бұрын
oh first haha. I appreciate you Neet
@olegleonov1310
@olegleonov1310 6 күн бұрын
Why not just? fun minDifference(nums: IntArray): Int { if(nums.size
@bundiderp5109
@bundiderp5109 6 күн бұрын
It's a bit unfortunate that you jumped right in with the intention to REMOVE elements. The description says "change to any value". The observation that this is effectively the same as removing was not made in the video, but beforehand.
@edmonddantes587
@edmonddantes587 5 күн бұрын
difficult to come up with the intuition here.
@pranithtirumalsetti1453
@pranithtirumalsetti1453 6 күн бұрын
I am waiting for you from 1 hour
@tirasjeffrey2002
@tirasjeffrey2002 6 күн бұрын
if you think neet's way of using hardcoded numbers is hard to wrap your mind around, try this: n = len(nums) i = 0 j = 3 if len(nums) i will go from 0 to 3, j will go from 3 to 0 -> i will be the left pointer, ie number of values cut off from the left -> j will be the right pointer, ie number of values cut off from the right -> thru this, we can get 4 combinations of removals: => 0 values from left, 3 values from right => 1 value from left, 2 from right => 2 from left, 1 from right => 3 from left, 0 from right return the min among these calculations hope this helps those who couldnt grasp neet's explanation peace, x edit: i had no clue heap could be used here im dumb asf
@shwethaks7994
@shwethaks7994 5 күн бұрын
@NeetCodeIO can you make a video on giving tips regarding job search and some websites where we can apply. I think this would be very helpful to many people like me in the middle of a job hunt.
@MWKING
@MWKING 5 күн бұрын
The video is speeded-up by default
@dheereshagrwal
@dheereshagrwal 6 күн бұрын
*no need to sort bud* min_four = nsmallest(4, nums) max_four = nlargest(4, nums) res = float("inf") for i in range(4): res = min(res, max_four[4 - i - 1] - min_four[i]) return res
@akialter
@akialter 6 күн бұрын
Man coding in a language that doesn't have min or max heap is tricky, probably just sort the array and call it a day Edit: can implement quickselect which average O(n), and a good segway to LC 215 kth largest element in array
@bhavyajainnd
@bhavyajainnd 6 күн бұрын
What's the Java equivalent fo heapq.nsmallest and largest?
@akshatsingh6036
@akshatsingh6036 6 күн бұрын
implement it yourself LOL
@f840810
@f840810 6 күн бұрын
You really need to use priority queue to implement that equivalent function. Yet, you can use two arrays and some element comparisons to determine the biggest and smallest 4 elements
@RuslanZinovyev
@RuslanZinovyev 5 күн бұрын
For minHeap it should be something like this: Queue minHeap = new PriorityQueue(Comparator.naturalOrder()); For maxHeap: Queue maxHeap = new PriorityQueue(Comparator.reverseOrder());
1❤️
00:17
Nonomen ノノメン
Рет қаралды 13 МЛН
Became invisible for one day!  #funny #wednesday #memes
00:25
Watch Me
Рет қаралды 52 МЛН
DO YOU HAVE FRIENDS LIKE THIS?
00:17
dednahype
Рет қаралды 81 МЛН
路飞被小孩吓到了#海贼王#路飞
00:41
路飞与唐舞桐
Рет қаралды 33 МЛН
ИГРОВОВЫЙ НОУТ ASUS ЗА 57 тысяч
25:33
Ремонтяш
Рет қаралды 342 М.
When you have 32GB RAM in your PC
0:12
Deadrig Gaming
Рет қаралды 2,1 МЛН
Gizli Apple Watch Özelliği😱
0:14
Safak Novruz
Рет қаралды 7 МЛН
Что еще за съемные фронталки от Vivo? #vivo
0:41
После ввода кода - протирайте панель
0:18
Up Your Brains
Рет қаралды 1,1 МЛН