#6 Linked List Implementation in Java Part 2 | Data Structures

Поделиться
HTML-код
  • Опубликовано: 27 янв 2025
  • НаукаНаука

Комментарии • 189

  • @maya.n
    @maya.n 6 лет назад +56

    You should add return; in the if(index==0) because it is going to continue doing everything after that code and it is going to put the element twice.
    The code should be like this:
    if(index==0)
    {
    insertAtStart(data);
    return;
    }
    Other than that, great video. It helped me a lot. Thanks.

    • @aleksandarmilosavljevic1996
      @aleksandarmilosavljevic1996 6 лет назад +2

      Your comment was very helpfull to me, thanks! :)

    • @maya.n
      @maya.n 6 лет назад

      @@aleksandarmilosavljevic1996 You're welcome. I am glad I could help, but I think in the next video he fixes it and makes it correct.

    • @dawah7556
      @dawah7556 5 лет назад +1

      thanks for help

    • @jefflee738
      @jefflee738 5 лет назад

      you garbage

    • @jefflee738
      @jefflee738 5 лет назад

      just joking

  • @Misdaque
    @Misdaque 3 года назад +9

    Great Video! No doubt
    Just one improvement we can do in this.
    In insertAt() method try to put the if condition at the beginning of the line and after calling insertAtStart() method put a return statement.
    if(index == 0){
    insertAtStart(data);
    return;
    }
    Edit: I saw in the next video you have made the correction and accepted your mistake. This makes you even greater!

  • @void_godzpower7473
    @void_godzpower7473 5 лет назад +9

    Best explanation of the topic so far, congrats, keep up the great work

  • @chetanjha6019
    @chetanjha6019 4 года назад +2

    Sir u are god in teaching

  • @LynN-he7he
    @LynN-he7he 6 лет назад +107

    When you move your cursor to paint, can you highlight the cursor? It's hard to follow where you are pointing to.

    • @ajithm2334
      @ajithm2334 5 лет назад +1

      Same point..

    • @rohitroyYT001
      @rohitroyYT001 3 года назад +1

      Same point.

    • @LazizbekYusupov92
      @LazizbekYusupov92 3 года назад

      Yeah, the same problem.

    • @vedapriya888
      @vedapriya888 Год назад

      Actually pointer can be seen if we see very carefully.I think it's better to change the background to cream colour so that the pointer would be highlighted more

  • @anuragbhattacharjee2708
    @anuragbhattacharjee2708 6 лет назад +12

    put else after the "if" block for the rest of the code of insertAt method or else the added element will get added twice in the list..

  • @FaizanKhan-gfaizank
    @FaizanKhan-gfaizank Год назад

    The best video explanation for linkedlist in java so far...

  • @rissandimo
    @rissandimo 6 лет назад +11

    Excellent video, it was very informative! Just to note (for others), in the insertAt(int data ) method, once we check if the index == 0 and if so we pre-append the data. At that point we have to type return; Because if not, the execution will still continue and add the value again in the for loop.

  • @navjhs
    @navjhs 6 лет назад +20

    Great Video... just one thing--- diagram should be crystal clear while explaining or actually change the pointer of drawing pen in your MS paint as that is hardly visible.

    • @amanmunnolli
      @amanmunnolli 3 года назад

      Yeah, struggled a lot to keep up with the pointer 😅

  • @subhamagarwal476
    @subhamagarwal476 4 года назад +3

    No one can explain better than you.!!Thank you sir ..finally i understood the concept of LL

  • @learnandearnakashrdpatel6826
    @learnandearnakashrdpatel6826 5 лет назад +2

    Very nice explanation sir I feel very good while seeing this video because how well explained you it make me very clear and because of I watched your video able to make program of linked list feel very proud I pray to continue making this type of video which will help students like me to get knowledge and make them self and knowledgeable person thank you

  • @manavgupta272
    @manavgupta272 4 года назад

    Sir you are the best teacher of java.

  • @nebilgokdemir4527
    @nebilgokdemir4527 5 лет назад +3

    this is the best explanation of Link List thank you for sharing

  • @AishusAura
    @AishusAura 4 года назад

    Easiest but Efficient explanation...Thanks a lot

  • @venkat4043
    @venkat4043 4 года назад +2

    at 8:34 , we need to implement the rest of the code in the else block, otherwise, the data will be added at index 0 and as well as index 1

  • @pradeepweerasinghe4201
    @pradeepweerasinghe4201 3 года назад +2

    At first it was like rocket science to me😅,After watching these videos several times finally got it,Thank you sir.

  • @AnkitKumar-xp9iv
    @AnkitKumar-xp9iv 6 лет назад +2

    Your explanation is great sir with the diagram which helped a lot in understanding the concept

  • @brucema4730
    @brucema4730 4 года назад +1

    Your channel has some really great content, but the way you speak is like playing the whole video in 1.5 of the original speed...still many thanks for the detailed explanation and demonstration of how it works in Java!

  • @HafizurRahman-dr3xe
    @HafizurRahman-dr3xe Год назад

    Your Effort is Absolutely so helpful. Thaks A Lot

  • @swayamprakashsahoo9002
    @swayamprakashsahoo9002 4 года назад +1

    Thank u sir for kind effort to teach us... I am really happy having understood this part

  • @milaismyname
    @milaismyname 7 лет назад +4

    Perfect explanation, thank you so much!

  • @akshaycoder7919
    @akshaycoder7919 4 года назад +1

    Thank you sir for explaining in
    Such a simple words

  • @mewnine7278
    @mewnine7278 6 лет назад +1

    You Explain Better Than My Professor Thanks

  • @travelnlearn
    @travelnlearn 3 года назад

    Thanks for this wonderful video. May gbu with lots of success love and life. Keep Rocking

  • @HafizurRahman-dr3xe
    @HafizurRahman-dr3xe Год назад

    We should go always in depth. Thanks a lot

  • @coderbuddy3875
    @coderbuddy3875 4 года назад +1

    Great explanation at RUclips !!

  • @AaronQuitorianoFilms
    @AaronQuitorianoFilms 5 лет назад +12

    Can't see the cursor when you are pointing in paint. :(

  • @sooriyakumarkarnan7885
    @sooriyakumarkarnan7885 6 лет назад +1

    thank you very much sir
    i like very much your teaching method and your video is very helpful to my programming studies

  • @ashankavindu2409
    @ashankavindu2409 4 года назад

    Man...you like a God to me.....❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤

  • @soumyadebbasu7882
    @soumyadebbasu7882 4 года назад

    We can also create a parameterized constructor inside Node class to define the data and link part, so we need to write only one line of code, while creating the object, in each of the methods of linked list class.

  • @ehabwa1167
    @ehabwa1167 4 года назад

    YOU'RE FANTAAAAAAASTIC!!!
    Big thnx

  • @ElevateWithMiranda
    @ElevateWithMiranda 5 лет назад

    thanks so much, far better than my proff

  • @zainabissa162
    @zainabissa162 2 года назад

    Great explanation Thank you.

  • @amarabd9844
    @amarabd9844 2 месяца назад

    For the insertAtFirst() instead of making all those things we use node.next = head; head = node;

  • @fanforever9916
    @fanforever9916 3 месяца назад

    wow!!!. thank you so much. god bless you.

  • @suchitragiri4546
    @suchitragiri4546 4 года назад

    Your videos are awesome!

  • @demdimi9316
    @demdimi9316 4 года назад

    Great explanations man.

  • @shekhrussel6304
    @shekhrussel6304 6 лет назад

    Ur videos r so much helpful for bttr understanding😍👍

  • @kristystrives6979
    @kristystrives6979 4 года назад

    More useful than my lecturer

  • @kanhaiyasharma5834
    @kanhaiyasharma5834 4 года назад

    very nice explanation but in inserAt(int index,int data) method we have to add for loop & Node n = head; into else statement otherwise data will be added two times.

  • @bhanuprakashkatika
    @bhanuprakashkatika 2 года назад

    thank you very much sir for detailed explanation

  • @yatinpandey6499
    @yatinpandey6499 4 года назад +3

    It seriously was very confusing when you were stating the n.next part.
    Spent my 3 straight hours and still didn't got anything after node.next=n.next😶
    Although,Thanks for your efforts sir.
    Love and Respect 🙏🏻💕

  • @bhaskarwhitebox
    @bhaskarwhitebox 6 лет назад

    special thanks to your diagrammatically representations.

  • @TheSanghamSaga
    @TheSanghamSaga 5 месяцев назад

    Hello sir
    In insertAt method for the 0 index we need to write a code
    If (index == 0) {
    node.next = head;
    head = node;
    }
    If we call insertAtStart method then it will create two objects.
    The first object will be created when we call the inserat method and the second object will be created when we call the insertAtStart method from if block.

  • @rajasekar4853
    @rajasekar4853 7 лет назад

    It's helps for me a lot thanks sir I am waiting for sequences of this series

  • @mindgym4543
    @mindgym4543 5 лет назад +1

    Great video, but we need to handle outofindex error Use below code
    in indexAt method
    for (int i = 0; i < aIndex-1; i++) {
    mTempNode = mTempNode.mNext;
    if(mTempNode== null){
    System.out.println("Please insert valid index!!
    Unable to insert");
    return;
    }
    }

  • @joschaweiss312
    @joschaweiss312 6 лет назад

    Very nice video, it was very helpful! Don't forget the three lines after the method after the else ;)

  • @muhammadwaqar5612
    @muhammadwaqar5612 5 лет назад +4

    Although you've taught very well thanks a lot, but there's a bug in addAt() method, what if someone input index which isn't in the list? there'll be nullPointerException.
    here I've applied my own logic, please check if it's okay? (working fine in IDE)
    void addAt(int i, int value)
    {
    Node node = new Node();
    node.data = value;

    if(head == null)
    {
    head = node;
    System.out.println("List is empty, node added at index 0");
    }
    else
    {
    Node n = new Node();
    n = head;

    while(n.next != null)
    {
    if (index == i-1)
    {
    node.next = n.next;
    n.next = node;
    break;
    }
    else if(i == 0)
    {
    addFirst(value);
    break;
    }
    n = n.next;
    index++;
    }
    if(n.next == null)
    {
    System.out.println("Given index is out of list");
    }
    }

  • @kchemutai3483
    @kchemutai3483 2 года назад

    Thanks so much, best tutorial so far on this topic. One bug on InsertAtIndex, if the user specifies an index out of range like index 12. I have captured it buy inserting the element at the end of the list

  • @raamanujbhattacharya5606
    @raamanujbhattacharya5606 4 года назад +2

    didn't understand at 7:43 min i.e; n.next=node;

  • @AllInOne-jg5qx
    @AllInOne-jg5qx 3 года назад

    You have to put the else block after if and put rest of the code to else block otherwise the added element will be added twice.

  • @isharaperera419
    @isharaperera419 5 лет назад

    Really helpful Reddy!

  • @salomonmetre2117
    @salomonmetre2117 4 года назад

    Great video again !!!!

  • @paulz6045
    @paulz6045 4 года назад +1

    first, you need to implement list.size(), and then check if index > list.size(){ thow new Exeption() }!

  • @sourabhsharma2649
    @sourabhsharma2649 5 лет назад +1

    sir please upload videos of doubly and circular linked list

  • @chinmaysoni4416
    @chinmaysoni4416 5 лет назад

    great explanation sir

  • @bilalahmed2263
    @bilalahmed2263 4 года назад +1

    please Clear my point.. why it work as node.next= n.next... why it did't work as n.next=node.next ? in insertatstart method

  • @itsyoursvijisoundarya8827
    @itsyoursvijisoundarya8827 6 лет назад

    Awesome work yaarrr

  • @abhishekprabhakar9025
    @abhishekprabhakar9025 6 лет назад

    Superb👌👌

  • @palashkhatri7820
    @palashkhatri7820 4 года назад

    Really nice explanation, Just paint representation can be lill more clean.

  • @anitharednam4347
    @anitharednam4347 3 года назад

    Super job

  • @no_more_anymore
    @no_more_anymore 2 года назад

    @2:22 It's also not necessary to have the code: 'node.next = null;' right?

  • @manojkumarvavilapalli3192
    @manojkumarvavilapalli3192 3 года назад

    ni8 entha track chesina okka point ekkado miss ipothuna.... Mee video okka 5min chusa, path clear ipoiendi.... Thank you bro

  • @nithyalakshmi6033
    @nithyalakshmi6033 Месяц назад

    Hi sir, i have a confusion on line 51
    node.next = n.next
    node.next should have the address of next node, which is 45, why we are pointing it to 18 which is previous node.
    My understanding here is n refers to 18 node only because of the condition (i

  • @shefalijain11
    @shefalijain11 3 года назад

    Understood, thank you!

  • @Akichu95
    @Akichu95 6 лет назад +1

    I have the same code as you, however when i assign position (0, 33)
    The data will be entered twice at the start before displaying the rest of the list
    Edit: the Node n = head and for loop should be in an "else" statement after the if statement

    • @kevinwu5017
      @kevinwu5017 6 лет назад

      please read Ben Trono's reply.

    • @vishu194
      @vishu194 6 лет назад

      that is bcoz sir forgot to write the return statement inside if statement where we comparing the 0 with index. you just write this --> return; after calling the method insertAtStart(); your problem will be solved then.

    • @crateer
      @crateer 5 лет назад

      return; or else

  • @crazylife7902
    @crazylife7902 5 лет назад +1

    Can you use a custom cursor. Its provided by the windows itself. That's the only addition this video now needs. Its really difficult to follow this video without that cursor when it travels of to the right side of the window. If you update this video with the new cursor, please share the link to the new video herewith. Thank you!

  • @vick_code
    @vick_code 4 года назад

    thanks,saved me

  • @tanvirkazirocks
    @tanvirkazirocks 3 года назад

    With all respect, we have to put the remaining code in the else block for insertAt() method after if condition

  • @narendra9903
    @narendra9903 6 лет назад +4

    Am confused..At 7.42 you wrote node.next = n.next . means next element of n is assigned to node.cant we write node= n.next?

  • @micoruzic5548
    @micoruzic5548 5 лет назад

    great video you helped me a lot but please change your cursor when you go to paint it's hard to follow it
    thanks

  • @shashankdahake8985
    @shashankdahake8985 11 месяцев назад

    Thank you so much ..

  • @keerthikayoganathan4259
    @keerthikayoganathan4259 3 года назад

    thankyou so much sir!

  • @sudhakarreddy5781
    @sudhakarreddy5781 4 года назад

    Hello Navin, can you make a video by implementing this methods in recursive way.
    for example prependElement(int value)-- recursively.

  • @sachinkumarsingh538
    @sachinkumarsingh538 6 лет назад

    hi sir
    thanks for such nice video
    but i would like to add a point what if someone is trying to add at a particular index and the head value is null or if the passed index is greater than available data in the list

  • @random-0
    @random-0 5 лет назад +1

    return should be added in if(index==0)

    • @ArrennBaral
      @ArrennBaral 5 лет назад

      Yeah, I was getting two data printed, thanks

  • @ayushigolwara
    @ayushigolwara 5 лет назад

    There is one issue in the code in inserAt method, if input is 0th position u need to add return in the if condition otherwise the data will be added to the list twice
    if(index==0)
    {
    insertAtStart(data);
    return;
    }

  • @maheshanvekar
    @maheshanvekar 6 лет назад

    Thank You for the explanation but can we have some real time scenarios for the linkedlist usage

  • @deependra5268
    @deependra5268 6 лет назад

    superb!..

  • @vibhutisharma3848
    @vibhutisharma3848 5 лет назад

    pls make video on circular and doubly linked list

  • @tsk2038
    @tsk2038 3 года назад

    Best lit 🔥

  • @debagnikroy9450
    @debagnikroy9450 7 лет назад

    Awesome sir

  • @nandkishor838
    @nandkishor838 4 года назад

    thank you sir.

  • @vishnuv918
    @vishnuv918 4 года назад

    Please upload all data structures in java sir

  • @mohammedmudassirkhatri6871
    @mohammedmudassirkhatri6871 5 лет назад +1

    why are we not making an object of head just like node ???

  • @AvinashKumar-uz9fq
    @AvinashKumar-uz9fq 6 лет назад +1

    What if Index is more than the number of element. NullPointerException will be thrown. So code is incomplete for method insertAt().

    • @crateer
      @crateer 5 лет назад

      This is a tutorial and NOT a complete follow along replecation of any Collection
      Also what you are saying is literally a maximum of 2 lines of extra code to implement.

  • @dinkarinjosh
    @dinkarinjosh 5 лет назад

    he explains in the next video, there is a slight mistake. the if loop if checking index ==0, should accompany with an else, else the element gets added twice.

  • @sudiptochakraborty2874
    @sudiptochakraborty2874 3 года назад

    thanks a lot...

  • @sathish8572
    @sathish8572 4 года назад

    insert at index 0 the method adding twice because before if condition a node as been created and data as been assigned and after if condition again once again data as been inserting due to insert at start!!!

  • @satoshinakamoto171
    @satoshinakamoto171 6 лет назад

    i think you should have drawn again as it was harder to see in the drawings. also maybe use a mouse pointer color as following the mouse pointer is difficult

  • @chandravideo
    @chandravideo 7 лет назад

    sir
    if we write IF condition for an insertAt function in the beginning, then excess node created in insertAt function won't be happening.

  • @jasrulzam
    @jasrulzam 2 года назад

    Hi,
    When you do insert a value at index, n already points to head before for loop, so in the first iteration n would have traversed to index 1 right? I did not understand this....pls helpout

  • @rakeshp8582
    @rakeshp8582 4 года назад

    Hi , i did same thing what you did in your video...i have tried to add element to 0 index, but, it prints the element 0, 1 index

  • @mindgym4543
    @mindgym4543 5 лет назад

    Complete indexAt method, however according to my knowledge, suggestions appreciated:
    void insertAt(int aIndex, int aData) {
    Node mNode = new Node();
    mNode.mData = aData;
    mNode.mNext = null;
    if (aIndex < 0) {
    System.out.println("Please provide proper positive index");
    } else {
    if (head == null) {
    if (aIndex == 0) {
    head = mNode;
    } else {
    System.out.println("Linked list is empty, can not insert at " + aIndex);
    }
    } else {
    if (aIndex == 0) {
    insertAtFirst(aData);
    } else {
    Node mTempNode = head;
    for (int i = 0; i < aIndex - 1; i++) {
    mTempNode = mTempNode.mNext;
    if (mTempNode == null) {
    System.out.println("Please insert at valid index!!
    Unable to insert");
    return;
    }
    }
    mNode.mNext = mTempNode.mNext;
    mTempNode.mNext = mNode;
    }
    }
    }
    }

  • @deepakmandlik9372
    @deepakmandlik9372 4 года назад

    awsome!!!!!!!!!!

  • @anduempire4373
    @anduempire4373 4 года назад

    In insertAt method, if given index is 3 and only one node in LinkedList then what happens??
    in this scenario user inserted at 3rd index but element added at 1st index
    so handle this scenario as well.

  • @MrTauquir
    @MrTauquir 6 лет назад

    Its outstanding video but pace of presentation should be little slow.

  • @Boom655
    @Boom655 6 лет назад

    awesome!!!

  • @maheshbabumeruva4968
    @maheshbabumeruva4968 11 месяцев назад

    Why are you not using linked list class in util package? It's very simple to perform all those operations right? No need to write this much of code, Is there any reason?

  • @pavanpatidar1793
    @pavanpatidar1793 5 лет назад

    please make more on ds