L14. Detect a loop or cycle in LinkedList | With proof and Intuition
HTML-код
- Опубликовано: 26 авг 2024
- Problem Link: tinyurl.com/3r...
Entire LL Sheet: takeuforward.o...
Check our A2Z DSA Course: takeuforward.o...
Please do give us a like, and subscribe to us if you are new to our channel.
Do follow us on our socials: linktr.ee/take...
No one even in paid courses also give the intuition behind the algorithms like you did Sir. You could have earned millions by paid courses but instead you chose to contribute for the greater well of the society. Hats off!
bro , i am with you in all of your debate , still he is earning heavily due to yt , maybe not particularly this video with 53k views at this point but he has videos with million views too
@@sakshammisra189 Yes. But he is not only earning money. He is earning prayers and blessings of millions of students like us. He is helping even foreign countries students as you won't see much videos from them. Indian RUclipsrs took teaching to the next level through RUclips.Thousands of us will get inspired to contribute like him when we become successful and have the opportunity. That's how he is shaping our minds.
@@sakshammisra189 Atleast, he is redeeming what he earns with his efforts and generosity
Whole NIT and IIT follows you ♥, hats off
Bro I am in IIIT-Kottayam we also follow not just IIT and Nit🙂
@@AdityaGupta-cx1ej well, he did not say "only" NITs and IITs follow him, did he ?
Knew this algorithm but came here to learn the proof ❤ And guess what Striver Bhaiyaa never disappoints ❤
The whole video is 10/10 but the intuition part is 1000/10. Just Striver things 🔥
Hands down the best explanation I have seen in so many year's , I am forever grateful for such beautiful intuition and explanation
Bro , i write my own bro by seeing your explanation ❤️
You are my God bro 🫂
the best dsa course. i can code myself after the intuition.explanaton is crystal clear
You are best teacher on RUclips ❤
The intuition part!🤌💯
Understood very well. I just love the way you teach. Love you Striver Bro ❤ One day or other I will meet you in the Google office or somewhere else and I will thank you personally by hugging you tight Bhai ❤
Hi,
Remember one thing slow and fast pointer will always meet if the ratio b/w speed of slow and fast pointer is greater than 1. There ratio can be in decimal also , But if you want them to meet fast in the loop then optimal speed will be slow = 1 and fast = 2.
But if the two pointers move like slow = 3 and fast = 5 then they also meet. It will take multiple cyle but they will eventually meet.
Can you please explain how that works?
I am so glad i found this channel.The Best!
Awesome video! I was doubting you'd actually explain the intuition in an intuitive way but you did it, thank you!!
Great explanation of the intuition ❤
18:25 That's the reason why I preferred Striver's DSA playlist
Striver bhaiya linked list ki sbhi videos jldi se upload kr do , next month interview bhi h😇
All the best brother 🎉
how did it go?
@@shreyxnsh.14 It was ok
For which company?@@rahulmandal4007
Many many Thanks for your effort Bhaiyaa ❤ you are in those teacher's of my life which i can never forger in my life❤💯
🙌 Loved the way you explained the problem solution and intuition .
Thank you very much .
If you still confused in H T approach then
Imagine, the distance between Hare and Tortoise is 5m.
So according to logic we move Tortoise by 1, the distance will be 5m and Hare by 2.
So them the overall distance will be 6-2 =4m
Our distance got reduced by 4m
And if you keep continuing the approach eventually our distance will be zero
And the same approach might work in 3. Bit it's depend on luck
Like 5+1 = 6. Then 6-3 = 3m
Again, 3+1= 4. Them 4-3 = 1m
Again, 1-1 = 2. Them 2-3 = -1 m
Overlapping.....
What a clarity !!! God level explanation at end
This is real teaching!
big hats off for the intuition part!!!🙌❤❤
Wonderful explanation striver!!! You are really doing an incredible job!!
the best explanation on the internet.
Understood, thanks striver for this amazing video.
Thankyou Sir for teaching us real problem solving.
Your at a whole new level
very well explained
Dek raha ha Binod Kitna easy hota ha DSA.....
great way to explain why fast and slow ptointers will collide definitely..🙅
Thx sir ,can u pls bring string playlist sir pls pls pls😅😅 i m excited for it...
17:44 correction if we move slow by 1 and fast by 2,3,4,5 etc we still collide and get the answer i ve prove it if you want you can increment fast by >=2 by having the appropriate while check
so that means what he said is wrong?
3,4,5 wont work if the list has just 2 elements
@@shreyxnsh.14 kind of yes or we can say that he hasnt explored about that…
thanks for telling us the why 😁
Striver only had one issue that could be heard from a few that his lectures are not beginer friendly.
Now that's all the past , it is settled. This is BEST content to exist for all the STRIVERS out there to learn dsa period.! No matter how much dsa u have done earlier even if u r a beginer the A2Z sheet is hands down the best+
Best DSA in YT
GOD OF DSA->STRIVER
Thanks striver
While putting the condition fast!=NULL should come before fast->next != NULL,if you do vice versa then it will show pointer error
A great explanation bro....... ❤
Awesome content Sir......
wish i could give you 1000 likes at once. Great explaination.
Great Striver🤩🤩
Awesome Explanation!
Man you're a GENIUS !!!
while(fast !=null){
fast = fast->next;
fast = fast -> next;
slow = slow ->next;
If(fast->next == slow) return true;
}
return false;
instead of using fast->next 2 times you can simply write fast->next->next :)
@@VIJAYSHARMA-dh6vo I know :). But my intention was to make it more obvious that fast is taking two steps when slow just takes one. Also I wanted to avoid that extra ugly check in while, ie, && fast->next->next != null (just a personal preference.)
you are great sir ! loads of love
❤
More efficient time and space complexity solution
bool hasCycle(ListNode *head)
{
if(head==NULL || head->next==NULL)return false;
ListNode*temp=head;
while(temp)
{
if(temp->val==1e8)return true;
temp->val=1e8;
temp=temp->next;
}
return false;
}
thank you
Understood
You are the best!!
13:40 will know the intuition behind why slow and fast pointer will meet
Understood 😊
Or we can also say, if fast->next == slow return true; to optimize by one step.
Can we also use unordered_set instead of map?
understood
Understood, thank you.
what if it has same elements ?
understand
Why not use a set instead of map?
bool hasCycle(ListNode *head) {
if(head == NULL) return false;
ListNode* temp = head;
int n = 10000; //given contraint
for(int i=0; inext == NULL){
return false;
}
temp = temp->next;
}
return true;
}
big brain move
Thank you so much!!
Is it necessary to increase the fast pointer only by 2? What if we increased it by 3 or 4? Will it still meet the slow pointer?
See the video completely. U will get to know
underestood
Thank you bhaiya
Understood✅🔥🔥
Thanks A Lot
relative motion yaad agaya
ListNode* temp = head;
int i = 0;
while(temp){
if(temp && temp->val == INT_MAX) return true;
temp->val = INT_MAX;
temp = temp->next;
}
return false;
Can this be a solution??? can i tell this to the interviwer ?
Thanks
In your old website you given those links but now what you have given in your link is not good videos
Understood
😇
Understood!!
Understooood
Understood!
Thank you !🌄
thanks bro
Wrong Answer
15 / 29 testcases passed
Editorial
Inputhead =[1,2]
pos = -1
Use Testcase
Output=true
Expected=false
the above test case fails to do so what about this condition?
❤
thanks bhai❤
what if the length of LL is 1 or 2?? will this code throw a error??
Time Complexity of this ?
🐐
understood!
US
undersood
👍
us
When we will move slow by 1 and fast by 3..then also they will collide....Yrr I don't understand why we are moving slow by 1 and fast by 2..pls anyone can help???
If we follow, slow by by 1 and fast by 3 the resultant reduction between them will be 2 , and consider if initial b/w tem is 7 the follow will like this 7 - 5 - 3 - 1 - (-1)... No collision of them
Thanks @@nishantgupta5015
Your explanation is op
💥💥💥💥💥💥💥💥💥💥💥💥💥💥💥💥💥💥💥💥💥💥
💥
❤🩹
please use some hindi words please so that north indian student understand easily
Understood
US
Understood
Understood
Understood
Understood
Understood
Understood