Michel Robart in Went to learn JavaScript in 2023
Lorem ipsum dolor sit amet consectetur adipisicing elit
Michel Robart in Went to learn JavaScript in 2023
Lorem ipsum dolor sit amet consectetur adipisicing elit
Michel Robart in Went to learn JavaScript in 2023
Lorem ipsum dolor sit amet consectetur adipisicing elit
Lorem ipsum dolor sit amet consectetur adipisicing https://i.ibb.co/2ZNqzVY/twitter.png
Lorem ipsum dolor sit amet consectetur adipisicing https://i.ibb.co/2ZNqzVY/twitter.png
Lorem ipsum dolor sit amet consectetur adipisicing https://i.ibb.co/2ZNqzVY/twitter.png
Jihad-Blogs is a responsive, beautiful, creative & unique Next.js full-stack project best suited for blogs & personal portfolio showcases. Itâs easy to use & setup, SEO friendly and has top notch standard compliant code.
Stay up to do date with my posts, subscribe to newsletter:
1=>2=>3=>4=>5=>6=>null
1=>2=>3=>4
â â
6 <= 5
āĻāĻĒāϰā§āϰ āĻĻā§āĻāĻŋ āϞāĻŋāĻāĻ āϞāĻŋāϏā§āĻā§āϰ āĻĻāĻŋāĻā§ āϤāĻžāĻāĻžāĻ, āĻĒā§āϰāĻĨāĻŽ āĻāĻŋāϤ⧠āĻā§āύ⧠cycle āύā§āĻ āĻāĻžāϰāύ, āϝā§āĻšā§āϤ⧠āϏāϰā§āĻŦāĻļā§āώ node āĻāϰ āĻĒāϰ⧠null. āĻāĻŋāύā§āϤ⧠āĻĻā§āĻŦāĻŋāϤā§āϝāĻŧ link list āĻāĻŋāϤ⧠cycle āϰāϝāĻŧā§āĻā§ āϝā§āĻšā§āϤ⧠āĻļā§āώ node 6 āĻāϰ āĻĒāϰ⧠āϤāĻž null āύāĻž āĻšāϝāĻŧā§ āϏā§āĻāĻŋ āĻāĻŦāĻžāϰ node 2 āĻ point āĻāϰāĻā§āĨ¤ āĻ āϰā§āĻĨāĻžāϤ āĻāĻāĻžāύ⧠2,3,4,5,6 node āĻŽāĻŋāϞ⧠āĻāĻāĻāĻŋ cycle create āĻāϰā§āĻā§āĨ¤
āĻāϰ āĻāĻŽāĻžāĻĻā§āϰ āĻāĻāĻžāĻ check āĻāϰāϤ⧠āĻšāĻŦā§āĨ¤
đ§đĩđ˛đŧđŋđ:
āϏāϰāĻžāϏāϰāĻŋ Code āĻ āϝāĻžāĻāϝāĻŧāĻžāϰ āĻāĻā§ āϤā§āĻŽāĻžāĻĻā§āϰ āĻā§āĻā§āĻ āĻāϰ⧠āĻāĻāĻāĻž analogy āĻĻāĻŋāϤ⧠āĻāĻžāĻ, āϝāĻžāϤ⧠āĻĒāϰāĻŦāϰā§āϤāĻŋāϤ⧠logic āĻŦā§āĻāϤ⧠āϏā§āĻŦāĻŋāϧāĻž āĻšāϝāĻŧāĨ¤
āĻāĻāĻāĻŋ āĻŦā§āϤā§āϤāĻžāĻāĻžāϰ āĻŽāĻžāĻ āĻāϞā§āĻĒāύāĻž āĻāϰā§āĨ¤āϤā§āĻŽāĻŋ āĻ āϤā§āĻŽāĻžāϰ āĻŦāύā§āϧ⧠āϰāĻžāĻļā§āĻĻ āĻāĻ āĻŦā§āϤā§āϤāĻžāĻāĻžāϰ āĻŽāĻžāĻ ā§āϰ āĻĒāϰāĻŋāϧāĻŋ āĻŦāĻžāϰāĻžāĻŦāϰ āĻĻā§āĻĄāĻŧ āĻĒā§āϰāϤāĻŋāϝā§āĻā§āϤāĻž āĻāϰāϤ⧠āĻāĻžāĻā§āĻ āĨ¤ āĻāĻāύ āĻŽāύ⧠āĻāϰ āϤā§āĻŽāĻžāϰ āĻŦāύā§āϧ⧠āϰāĻžāĻļā§āĻĻ āϝāϤ āĻā§āϰ⧠āĻĻā§āĻĄāĻŧāĻžāϤ⧠āĻĒāĻžāϰ⧠āϤā§āĻŽāĻŋ āϤāĻžāϰ āĻāĻžāĻāϤ⧠āĻĻā§āĻŦā§āĻā§āύ āĻāϤāĻŋāϤ⧠āĻĻā§āĻĄāĻŧāĻžāϤ⧠āĻĒāĻžāϰā§āĨ¤ āϰāĻžāĻļā§āĻĻ āĻāĻāϧāĻžāĻĒ āĻā§āϞ⧠āϤā§āĻŽāĻŋ āĻĻā§āĻ āϧāĻžāĻĒ āϝāĻžāĻāĨ¤ āϰāĻžāĻļā§āĻĻ 10km āĻŦā§āĻā§ āĻĻā§āĻĄāĻŧāĻžāϞ⧠āϤā§āĻŽāĻŋ āĻĻā§āĻĄāĻŧāĻžāĻ 20km āĻŦā§āĻā§, āĻ āύā§āĻāĻāĻž āĻāϰāĻāĻŽāĨ¤
āĻāĻāύ āĻŽāĻžāĻ āϝā§āĻšā§āϤ⧠āĻā§āϞāĻžāĻāĻžāϰ,āĻĻā§āĻĄāĻŧ āĻļā§āϰ⧠āĻāϰāĻž āĻĒāϰ āϤā§āĻŽāĻŋ āĻĒā§āϰāĻĨāĻŽā§āĻ āϰāĻžāĻļā§āĻĻāĻā§ āĻāĻžāĻĄāĻŧāĻŋāϝāĻŧā§ āĻāĻā§ āĻāϞ⧠āϝāĻžāĻŦā§āĨ¤ āĻĻā§āĻĄāĻŧ āϝāĻĻāĻŋ āĻāϞāĻŽāĻžāύ āĻĨāĻžāĻā§ āϤāĻžāĻšāϞ⧠āĻĒāϰāĻŦāϰā§āϤāĻŋāϤ⧠āϤā§āĻŽāĻŋ āĻāĻŦāĻžāϰ āϰāĻžāĻļā§āĻĻāĻā§ āϧāϰ⧠āĻĢā§āϞāϤ⧠āĻĒāĻžāϰāĻŦā§āĨ¤ āĻ āϰā§āĻĨāĻžāϤ āϤā§āĻŽāĻŋ āĻāϰ āϰāĻžāĻļā§āĻĻ āĻāĻāĻ āĻāĻžāϝāĻŧāĻāĻžāϝāĻŧ āĻŽāĻŋāϞāĻŋāϤ āĻšāĻŦā§āĨ¤āĻāĻāĻžāĻŦā§ āĻĻā§āĻĄāĻŧ āĻāϞāĻŽāĻžāύ āĻĨāĻžāĻāϞ⧠āĻāĻŋāĻā§ āϏāĻŽāϝāĻŧ āĻĒāϰāĻĒāϰ āϤā§āĻŽāĻŋ āĻŦāĻžāϰāĻŦāĻžāϰ āϤā§āĻŽāĻžāϰ āĻŦāύā§āϧ⧠āϰāĻžāĻļā§āĻĻā§āϰ āϏāĻžāĻĨā§ āĻāĻāĻ āĻāĻžāϝāĻŧāĻāĻžāϝāĻŧ āĻŽāĻŋāϞāĻŋāϤ āĻšāϤā§āĻ āĻĨāĻžāĻāĻŦā§āĨ¤
āĻāĻŦāĻžāϰā§, āĻāϰā§āĻāĻāĻž āĻāĻŋāύāĻŋāϏ āĻāĻŋāύā§āϤāĻž āĻāϰā§,āĻŽāύ⧠āĻāϰ āĻāĻŦāĻžāϰāĻ āϤā§āĻŽāϰāĻž āĻĻā§āĻĄāĻŧ āĻĒā§āϰāϤāĻŋāϝā§āĻā§āϤāĻž āĻāϰāĻŦā§āĨ¤ āĻāĻŋāύā§āϤ⧠āĻāĻŦāĻžāϰ āϤā§āĻŽāϰāĻž āĻāϰ āĻā§āύ āĻā§āϞāĻžāĻāĻžāϰ āĻŽāĻžāĻ āύāϝāĻŧ āĻŦāϰāĻ āĻāĻāĻāĻŋ āϏā§āĻāĻž āϏāϰāϞāϰā§āĻāĻŋāĻ āĻŽāĻžāĻ āĻŦāϰāĻžāĻŦāϰ āĻĻā§āĻĄāĻŧāĻžāĻŦā§āĨ¤ āĻāĻŦāĻžāϰā§, āĻĻā§āĻĄāĻŧ āĻļā§āϰ⧠āĻāϰāĻžāϰ āĻāϝāĻŧā§āĻ āĻŽā§āĻšā§āϰā§āϤā§āĻ āϤā§āĻŽāĻŋ āϤā§āĻŽāĻžāϰ āĻŦāύā§āϧ⧠āϰāĻžāĻļā§āĻĻāĻā§ āĻāĻžāĻĄāĻŧāĻŋāϝāĻŧā§ āĻā§āϞā§āĨ¤ āĻāĻŋāύā§āϤ⧠āĻŦāϞā§āϤ⧠āϤā§āĻŽāĻŋ āĻāĻŋ āĻāĻāύ āϤā§āĻŽāĻžāϰ āĻŦāύā§āϧā§āϰ āϏāĻžāĻĨā§ āĻŽāĻžāĻ ā§āϰ āĻ āύā§āϝ āĻā§āύ⧠āĻāĻžāϝāĻŧāĻāĻžāϝāĻŧ āĻāĻŦāĻžāϰ āĻŽāĻŋāϞāĻŋāϤ āĻšāĻŦā§? āĻ āĻŦāĻļā§āϝāĻ āύāĻžāĨ¤ āĻāĻžāϰāύ āĻāĻŦāĻžāϰā§āϰ⧠āĻŽāĻžāĻ āϤ⧠āĻŦā§āϤā§āϤāĻžāĻāĻžāϰ āύāϝāĻŧ, āĻāĻāĻŋ āϏā§āĻāĻž āĻŽāĻžāĻ āĨ¤ āϤāĻžāĻ āϝāϤ āĻā§āϰā§āĻ āĻĻā§āĻĄāĻŧāĻžāĻ āύāĻž āĻā§āύ⧠āϤā§āĻŽāĻŋ āϰāĻžāĻļā§āĻĻā§āϰ āϏāĻžāĻĨā§ āĻāϰ āĻā§āĻĨāĻžāĻ āĻŽāĻŋāϞāĻŋāϤ āĻšāĻŦā§ āύāĻžāĨ¤
āĻāĻāύ āĻāĻ āĻāύā§āϏā§āĻĒā§āĻ āĻāĻžāĻā§ āϞāĻžāĻāĻŋāϝāĻŧā§ āϤā§āĻŽāĻŋ āϞāĻŋāĻāĻ āϞāĻŋāϏā§āĻā§ āϏāĻžāĻāĻā§āϞ āĻāĻā§ āĻāĻŋāύāĻž āϤāĻž āύāĻŋāϰā§āĻŖāϝāĻŧ āĻāϰāϤ⧠āĻĒāĻžāϰā§āĨ¤
āĻāϞā§,āĻāĻāύ āĻāĻŽāϰāĻž āϧāĻžāĻĒā§ āϧāĻžāĻĒā§ āĻāĻŽāĻžāĻĻā§āϰ code developed āĻāϰāĻŦā§āĨ¤
đđŧđąđ˛:
āĻĒā§āϰāĻĨāĻŽā§āĻ fast āĻāĻŦāĻ slow āύāĻžāĻŽāĻ āĻĻā§āĻāĻāĻŋ Node type pointer āύāĻŋāϝāĻŧā§ āύā§āĻāĨ¤ āύāĻžāĻŽ āĻļā§āύā§āĻ āĻŦā§āĻāϤ⧠āĻĒāĻžāϰāĻā§, fast āύāĻžāĻŽāĻ pointer āĻāĻŋ āĻšāϞ⧠āϤā§āĻŽāĻŋ, āϝ⧠āĻĻā§āĻŦāĻŋāĻā§āύ āĻāϤāĻŋāϤ⧠āĻāϞāĻŦā§āĨ¤ āĻāϰ slow āύāĻžāĻŽāĻ pointer āĻāĻŋ āĻšāϞ⧠āϤā§āĻŽāĻžāϰ āĻŦāύā§āϧ⧠āϰāĻžāĻļā§āĻĻ āϝ⧠āϤā§āĻŽāĻžāϰ āĻ āϰā§āϧā§āĻ āĻāϤāĻŋāϤ⧠āĻāϞāĻŦā§āĨ¤
Node *fast=head;
Node *slow=head;
āϞāĻā§āώ āĻāϰ, āĻāĻāĻžāύ⧠slow āĻ fast āĻāĻāϝāĻŧā§āĻ head āĻĨā§āĻā§ āĻļā§āϰ⧠āĻšāĻŦā§,āϝā§āĻšā§āϤ⧠starting line āϏāĻŦāĻžāϰ āĻā§āώā§āϤā§āϰ⧠same.
āĻāĻŦāĻžāϰ āĻāĻāĻāĻž loop āĻāϰ āĻŽāĻžāϧā§āϝāĻŽā§ slow āĻāĻŦāĻ fast āĻā§ āĻāĻāĻžāύ⧠āĻļā§āϰ⧠āĻāϰāĻŋāĨ¤ slow āϝāĻĻāĻŋ āĻāĻ āĻāϰ āϝāĻžāϝāĻŧ āϤāĻžāĻšāϞ⧠fast āϝāĻžāĻŦā§ āĻĻā§āĻ āĻāϰāĨ¤
slow=slow->next;
fast=fast->next->next;
āĻāĻāĻžāĻŦā§ āĻāϞāϤ⧠āĻāϞāϤā§,āϝāĻĻāĻŋ āĻĻā§āĻāĻŋ slow āĻāĻŦāĻ fast āĻā§āύ⧠āĻāĻ āĻāĻžāϝāĻŧāĻāĻžāϝāĻŧ āĻŽāĻŋāϞāĻŋāϤ āĻšāϝāĻŧā§āĻā§, āϤāĻžāĻšāϞ⧠āĻŦā§āĻāĻŦā§ cycle āĻŦāĻŋāĻĻā§āϝāĻŽāĻžāύ āĻāĻā§(āĻŦā§āϤā§āϤāĻžāĻāĻžāϰ āĻŽāĻžāĻ )āĨ¤ āĻāϰ āϤāĻž āύāĻž āĻšāϞ⧠fast āϝā§āĻšā§āϤ⧠āĻŦā§āĻļāĻŋ āĻāϤāĻŋāϤ⧠āϝāĻžāĻā§āĻā§,āϤāĻžāĻ fast āϏāĻŦāĻžāϰ āĻāĻā§ finish line āĻ āĻĒā§āĻāĻžāĻŦā§, āĻŽāĻžāύ⧠null āĻšāĻŦā§, āϏā§āĻā§āώā§āϤā§āϰ⧠cycle āύāĻžāĻ (āϏā§āĻāĻž āĻŽāĻžāĻ )āĨ¤
āĻāĻŽāϰāĻž simple while loop āĻĻāĻŋāϝāĻŧā§ āĻāĻ āĻāĻžāĻ āĻāĻžāϞāĻžāϤ⧠āĻĒāĻžāϰāĻŋāĨ¤
āϤāĻžāĻšāϞ⧠code āĻĻā§āĻŦāĻžāϰāĻžāϞ⧠āĻāĻŽāύ:
void function()
{
bool ans=false;
Node *fast=head;
Node *slow=head;
while(fast!=NULL && fast->next!=NULL)
{
slow=slow->next; //āĻāĻāĻŦāĻžāϰ āĻāϰ⧠āĻāĻāĻžāĻŦā§āĨ¤
fast=fast->next->next;//āĻĻā§āĻāĻŦāĻžāϰ āĻāϰ⧠āĻāĻāĻžāĻŦā§āĨ¤
if(fast==slow)
{
ans= true;
break;
}
}
cout<<ans;
}
đđŧđąđ˛ đđģđŽđšđŧđ´đ:
āĻāϞ⧠āĻāĻāύ code āĻāĻž āĻŦāĻŋāĻļā§āϞā§āώāύ āĻāϰāĻŋ:
āĻĒā§āϰāĻĨāĻŽā§āĻ ans āύāĻžāĻŽāĻ āĻāĻāĻāĻŋ boolean variable āύā§āϝāĻŧāĻž āĻšāϝāĻŧā§āĻā§ āϝā§āĻāĻŋ āĻŦāϰā§āϤāĻŽāĻžāύ⧠false. ans āϝāĻĻāĻŋ āĻļā§āώ āĻĒāϰā§āϝāύā§āϤ false āĻ āĻĨāĻžāĻā§ āϤāĻžāĻšāϞ⧠āĻŦā§āĻāϤ⧠āĻšāĻŦā§ cycle āύāĻžāĻ, āĻāϰ true āĻšāϞ⧠āĻŦā§āĻāϤ⧠āĻšāĻŦā§ cycle āĻāĻā§āĨ¤
āĻāĻāύ āĻāĻāĻāĻž āĻāĻāĻāĻž confusion āĻĻā§āϰ āĻāϰāĻŋāĨ¤ āϤā§āĻŽāĻžāĻĻā§āϰ āĻŽāύ⧠āĻāϰāĻāĻŽ āĻĒā§āϰāĻļā§āύ āĻāϏāϤā§āĻ āĻĒāĻžāϰ⧠āϝā§, while(fast!=NULL) āĻāϤāĻā§āĻā§ condition āĻĻāĻŋāϞā§āĻ āϤ⧠āĻšāϤ⧠āĨ¤ āϤāĻžāϰ āϏāĻžāĻĨā§ fast->next!=NULL āĻāĻ condition āϝā§āĻ āĻāϰāĻžāϰ āĻāĻžāϰāύ āĻā§? āĻāĻāĻā§ āĻŽāĻžāĻĨāĻž āĻāĻžāĻāĻžāϞā§āĻ āĻŦā§āĻāϤ⧠āĻĒāĻžāϰāĻŦā§ āϝā§, fast āϝā§āĻšā§āϤ⧠āĻĻā§āĻāĻāϰ āĻāϰ⧠āĻāĻāĻžāĻā§āĻā§, āϏā§āϤāϰāĻžāĻ āĻā§āύ⧠āϏāĻŽāϝāĻŧ āϝāĻĻāĻŋ āϤāĻž link list āĻāϰ āĻļā§āώā§āϰ node=6 āĻ āĻāϞ⧠āĻāϏā§,
( NULL āĻāϰ āĻāĻā§āϰ node) āϤāĻžāĻšāϞ⧠āĻāϰ āĻĒāϰā§āϰ iteration āĻ fast=NULL āύāĻž āĻšāĻāϝāĻŧāĻžāϰ āĻāĻžāϰāύ⧠āϤāĻž loop āĻāĻŋāϤāϰ⧠āĻĸā§āĻāĻŦā§ āĻ āĻŋāĻāĻ, āĻāĻŋāύā§āϤ⧠āĻāĻāύ fast āĻā§ āĻĻā§āĻāĻŦāĻžāϰ update āĻāϰāϤ⧠āĻāĻžāĻāĻŦā§āĨ¤ āĻāĻŋāύā§āϤ⧠fast āϤ⧠āĻāĻāĻŦāĻžāϰ update āĻšāϝāĻŧā§āĻ NULL āĻšāϝāĻŧā§ āϝāĻžāĻŦā§āĨ¤ āĻāĻŦāĻ āĻĒāϰāĻŦāϰā§āϤā§āϤ⧠āĻāϰ update āĻšāĻŦā§āύāĻžāĨ¤
(NULL->next āĻŦāϞāϤ⧠āĻāĻŋāĻā§ āύā§āĻ) āĨ¤
āĻāĻā§āώā§āϤā§āϰ⧠āĻāĻŽāϰāĻž null pointer exception āĻŦāĻž segmentation fault āĻāϰ āĻŽāϤ error āĻāĻžāĻŦā§āĨ¤ āϤāĻžāĻ āĻāĻŽāĻžāĻĻā§āϰ āϏāĻŦāϏāĻŽāϝāĻŧ āĻŽāĻžāĻĨāĻžāϝāĻŧ āϰāĻžāĻāϤ⧠āĻšāĻŦā§ āϝ⧠fast NULL āύāĻž āĻšāĻāϝāĻŧāĻžāϰ āĻĒāĻžāĻļāĻžāĻĒāĻžāĻļāĻŋ āϝāĻžāϤ⧠fast āĻāϰ āĻĒāϰ⧠āϏāϰā§āĻŦāύāĻŋāĻŽā§āύ āĻāĻāĻāĻŋ valid node āĻĨāĻžāĻā§āĨ¤ āϤāĻžāĻ āĻāĻŽāĻžāĻĻā§āϰ āĻāĻ extra āĻāϰā§āĻāĻāĻŋ condition āĻĻā§āĻāϝāĻŧāĻžāĨ¤ āĻāĻļāĻž āĻāϰāĻŋ āĻāĻāύ code āĻŦā§āĻāϤ⧠āĻāϰ āĻā§āύ⧠āϏāĻŽāϏā§āϝāĻž āĻšāĻŦā§ āύāĻžāĨ¤
āĻāϞ⧠āĻāĻŽāϰāĻž āĻāĻŦāĻžāϰ āĻāĻŽāĻžāĻĻā§āϰ code āĻā§ āĻāĻāĻā§ āĻšāĻžāϤ⧠āĻāϞāĻŽā§ āĻŦāĻŋāĻļā§āϞā§āώāύ āĻāϰ⧠āĻĻā§āĻāĻŋ āϏāĻŦ āĻ āĻŋāĻāĻ āĻžāĻ āĻāĻā§ āĻāĻŋāύāĻžāĨ¤
āĻĒā§āϰāĻĨāĻŽ đđļđģđ¸đ˛đą đđļđđ :
1=>2=>3=>4=>5=>6=>null
S
F
1âst iteration:
slow=1,fast=1āĻāĻŦāĻ fast->next=2;
loop āĻāϰ condition āϏāϤā§āϝ āĻšāĻŦā§āĨ¤
āĻ āϤāĻāĻŦ slow āĻāĻŦāĻ fast update āĻšāĻŦā§āĨ¤
slow=slow->next=2;
fast=fast->next->next=3;
slow āĻāĻŦāĻ fast āϏāĻŽāĻžāύ āύāϝāĻŧ āĻ āϤāĻāĻŦ,āĻĒāϰāĻŦāϰā§āϤ⧠iteration āĻ āϝāĻžāĻāĨ¤
2nd iteration:
1=>2=>3=>4=>5=>6=>null
S F
slow=2,fast=3 āĻāĻŦāĻ fast->next=4;
loop āĻāϰ condition āϏāϤā§āϝ āĻšāĻŦā§āĨ¤
āĻ āϤāĻāĻŦ slow āĻāĻŦāĻ fast update āĻšāĻŦā§āĨ¤
slow=slow->next=3;
fast=fast->next->next=5;
slow āĻāĻŦāĻ fast āϏāĻŽāĻžāύ āύāϝāĻŧ āĻ āϤāĻāĻŦ,āĻĒāϰāĻŦāϰā§āϤ⧠iteration āĻ āϝāĻžāĻāĨ¤
3rd iteration:
1=>2=>3=>4=>5=>6=>null
S F
slow=3,fast=5 āĻāĻŦāĻ fast->next=6;
loop āĻāϰ condition āϏāϤā§āϝ āĻšāĻŦā§āĨ¤
āĻ āϤāĻāĻŦ slow āĻāĻŦāĻ fast update āĻšāĻŦā§āĨ¤
slow=slow->next=4;
fast=fast->next->next=NULL;
slow āĻāĻŦāĻ fast āϏāĻŽāĻžāύ āύāϝāĻŧ āĻ āϤāĻāĻŦ,āĻĒāϰāĻŦāϰā§āϤ⧠iteration āĻ āϝāĻžāĻāĨ¤
4th iteration:
1=>2=>3=>4=>5=>6=>null
S F
slow=4,fast=NULL
āĻāĻāύ fast pointer āĻāĻŋ NULL āĻšāϝāĻŧā§ āĻā§āĻā§,āϤāĻžāĻ loop āĻāϰ condition āĻŽāĻŋāĻĨā§āϝāĻž āĻšāĻŦā§ āĻāĻŦāĻ loop āĻĨā§āĻŽā§ āϝāĻžāĻŦā§āĨ¤
ans=false āĻ āĻĨā§āĻā§ āϝāĻžāĻŦā§āĨ¤ āĻāĻāĻžāĻŦā§ āĻŦā§āĻāĻŦā§ āϝ⧠link list āĻā§āύ⧠cycle āύā§āĻāĨ¤
āĻĻā§āĻŦāĻŋāϤā§āϝāĻŧ đđļđģđ¸đ˛đą đđļđđ :
1st iteration:
F
S
1=>2=>3=>4
â â
6 <= 5
slow=1,fast=1 āĻāĻŦāĻ fast->next=2
loop āĻāϰ condition āϏāϤā§āϝ āĻšāĻŦā§āĨ¤
āĻ āϤāĻāĻŦ slow āĻāĻŦāĻ fast update āĻšāĻŦā§āĨ¤
slow=slow->next=2;
fast=fast->next->next=3;
slow āĻāĻŦāĻ fast āϏāĻŽāĻžāύ āύāϝāĻŧ āĻ āϤāĻāĻŦ,āĻĒāϰāĻŦāϰā§āϤ⧠iteration āĻ āϝāĻžāĻāĨ¤
2nd iteration:
S F
1=>2=>3=>4
â â
6 <= 5
slow=2,fast=3 āĻāĻŦāĻ fast->next=4
loop āĻāϰ condition āϏāϤā§āϝ āĻšāĻŦā§āĨ¤
āĻ āϤāĻāĻŦ slow āĻāĻŦāĻ fast update āĻšāĻŦā§āĨ¤
slow=slow->next=3;
fast=fast->next->next=5;
slow āĻāĻŦāĻ fast āϏāĻŽāĻžāύ āύāϝāĻŧ āĻ āϤāĻāĻŦ,āĻĒāϰāĻŦāϰā§āϤ⧠iteration āĻ āϝāĻžāĻāĨ¤
3rd iteration:
S
1=>2=>3=>4
â â
6 <= 5
F
slow=3,fast=5 āĻāĻŦāĻ fast->next=6
loop āĻāϰ condition āϏāϤā§āϝ āĻšāĻŦā§āĨ¤
āĻ āϤāĻāĻŦ slow āĻāĻŦāĻ fast update āĻšāĻŦā§āĨ¤
slow=slow->next=4;
fast=fast->next->next=2;
slow āĻāĻŦāĻ fast āϏāĻŽāĻžāύ āύāϝāĻŧ āĻ āϤāĻāĻŦ,āĻĒāϰāĻŦāϰā§āϤ⧠iteration āĻ āϝāĻžāĻāĨ¤
4th iteration:
F S
1=>2=>3=>4
â â
6 <= 5
slow=4,fast=2 āĻāĻŦāĻ fast->next=3
loop āĻāϰ condition āϏāϤā§āϝ āĻšāĻŦā§āĨ¤
āĻ āϤāĻāĻŦ slow āĻāĻŦāĻ fast update āĻšāĻŦā§āĨ¤
slow=slow->next=5;
fast=fast->next->next=4;
slow āĻāĻŦāĻ fast āϏāĻŽāĻžāύ āύāϝāĻŧ āĻ āϤāĻāĻŦ,āĻĒāϰāĻŦāϰā§āϤ⧠iteration āĻ āϝāĻžāĻāĨ¤
5th iteration:
F
1=>2=>3=>4
â â
6 <= 5
S
slow=5,fast=4 āĻāĻŦāĻ fast->next=5
loop āĻāϰ condition āϏāϤā§āϝ āĻšāĻŦā§āĨ¤
āĻ āϤāĻāĻŦ slow āĻāĻŦāĻ fast update āĻšāĻŦā§āĨ¤
slow=slow->next=6;
fast=fast->next->next=6;
āĻāĻāύ slow āĻāĻŦāĻ fast āϏāĻŽāĻžāύ āĻšāϝāĻŧā§ āĻā§āĻā§ āϤāĻžāĻ,
if(slow==fast) āĻāĻ condition āĻ āϏāϤā§āϝ āĻšāϝāĻŧā§ āϝāĻžāĻŦā§āĨ¤ āĻāĻŦāĻ ans=true āĻāϰ⧠āĻĻāĻŋāϝāĻŧā§ loop closed āĻšāϝāĻŧā§ āϝāĻžāĻŦā§āĨ¤
āĻ āϤāĻāĻŦ linked list āĻ cycle āĻŦāĻŋāĻĻā§āϝāĻŽāĻžāύ!!
āĻāĻļāĻž āĻāϰāĻŋ āĻāĻāύ āϤā§āĻŽāĻŋ āϏāĻšāĻā§āĻ linked list āĻ cycle detect āĻāϰāϤ⧠āĻĒāĻžāϰāĻŦā§āĨ¤