Reversing Linked list data structures in Hindi

किसी भी linked list को reverse करने के दो तरीके होते है एक हम list के links को बदल कर linked list को reverse कर सकते है और दूसरा हम nodes की values को बदलकर list को reverse कर सकते है |

आज हम देखेंगे की कैसे हम linked list के nodes को बदल कर उसको reverse कर सकते है |

Reversing Linked list data structures in Hindi

जैसे की आप देख सकते है की हमारे पास एक linked list है जिसमे की चार nodes है और इस list को reverse करने के लिए हमें हर node के link part में उससे पहले आने वाले node का reference store करना होगा

और last में हम start variable को linked list के last node को point करवा देंगे जैसे की आप निचे दी गयी image में देख सकते है |

Reversing Linked list data structures in Hindi

Linked list को nodes के links का इस्तेमाल करके कैसे reverse करे

linked list को nodes की मदद से reverse करने के लिए हमें तीन references prev, p and next की जरुरत पड़ेगी |

सबसे पहले हम prev variable में None value ही रखेंगे और उसके बाद हम p variable में linked list के first node का reference store कर देंगे |  

Reversing Linked list data structures in Hindi

और उसके बाद हम एक loop को चलायेगे जब तक की p variable की value None नहीं हो जाती है मतलब की जब तक हम linked list के last node तक ना पहुंच जाये |

और हर iteration में हम p node के बाद आने वाले node का reference next variable में store करवा देंगे जैसे की आप निचे दी गयी image में देख सकते है |

Reversing Linked list data structures in Hindi

उसके बाद हम node p के link part में prev variable की value के बराबर कर देंगे जैसे की आप निचे दी गयी image में देख सकते है |  

Reversing Linked list data structures in Hindi

और उसके बाद हम node p के reference को variable prev में store करवा देंगे इसके बाद variable prev और p दोनों एक ही node को point करेंगे जैसे की आप नीचे दी गयी image में देख सकते है |   

Reversing Linked list data structures in Hindi

और उसके बाद हम node p को next node के बराबर कर देंगे इसका मतलब है की variable p और next दोनों एक ही node को point करेंगे | 

Reversing Linked list data structures in Hindi

इसके बाद हम इन सारे steps को बार बार दोहरायेगे जब तक की p variable linked list के last node तक ना पहुंच जाये | 

Reversing Linked list data structures in Hindi

Reversing Linked list data structures in Hindi

Reversing Linked list data structures in Hindi

Reversing Linked list data structures in Hindi

Reversing Linked list data structures in Hindi

Reversing Linked list data structures in Hindi

Reversing Linked list data structures in Hindi

Reversing Linked list data structures in Hindi

Reversing Linked list data structures in Hindi

अब हम list के last node तक पहुंच गए है क्योकि node p का link part None हो चूका है

इसलिए अब हम self variable में linked list के last node का reference store करवा देंगे जिससे की linked list reverse order में हो जाये |

Reversing Linked list data structures in Hindi

इसके बाद nodes के linked parts का इस्तेमाल करते हुए linked list reverse order में हो जाएगी |  

linked list को reverse करने के लिए python code

def reverse_list(self):

    prev = None    p = self.start
    while p is not None:
        next = p.link
        p.link = prev
        prev = p
        p = next
    self.start = prev

टिप्पणी पोस्ट करें

0 टिप्पणियां