Bubble Sort using LINK PART – Algorithm and Function – LINKS को Exchange करके Sorting करने के लिए हम निम्न Algorithm का प्रयोग कर सकते हैं-
Bubble Sort Algorithm LINK PART
[code] Here LIST is a Linked List Data Type and P, Q, R, S and TEMP are Linked Lists. START is a LIST Type Global Linked List Variable. 1 SET S = NULL 2 REPEAT Step 3 to 5 WHILE S <> START[LINK] 3 SET R = P = START 4 SET Q = P[LINK] 5 REPEAT Step 6 and 7 WHILE P <> S 6 IF P[INFO] > Q[INFO] IF P = START TEMP = Q[LINK] Q[LINK] = P P[LINK] = TEMP SET START = Q SET R = Q ELSE TEMP = Q[LINK] Q[LINK] = P P[LINK] = TEMP R[LINK] = Q R = Q [ End of Inner IF Structure ] ELSE SET R = P SET P = P[LINK] [End of Outer IF Structure ] 7 SET Q = P[LINK] 8 IF Q = S 9 SET S = P [ End of Inner WHILE Loop ] [ End of Outer WHILE Loop ] 10 EXIT [/code]
इस Algorithm के आधार पर हम निम्नानुसार एक Function Create कर सकते हैं जो कि किसी Linked List की Sorting के लिए Use किया जा सकता है-
Bubble Sort Function LINK PART
[code] void LLBubbleSortLP() { struct LIST *P, *Q, *R, *S, *TEMP ; S = NULL; while(S != START->LINK) { R = P = START; Q = P->LINK; while(P != S) { if( P->INFO > Q->INFO ) { if( P == START ) { TEMP = Q->LINK; Q->LINK = P; P->LINK = TEMP; START = Q; R = Q; } else { TEMP = Q->LINK; Q->LINK = P; P->LINK = TEMP; R->LINK = Q; R = Q; } } else { R = P; P = P->LINK; } Q = P->LINK; If( Q == S ) S = P; } } } [/code]
ये Article इस वेबसाईट पर Selling हेतु उपलब्ध EBook Data Structure and Algorithms in Hindi से लिया गया है। इसलिए यदि ये Article आपके लिए उपयोगी रहा, तो निश्चित रूप से ये पुस्तक भी आपके लिए काफी उपयोगी साबित होगी।
Data Structure and Algorithms in Hindi | Page: 433 | Format: PDF