Name:
Location: bangalore, india, India

A software professional, interested in writing, and helping out others.

Thursday, March 02, 2006

linked lists

algorithm for sorting
START :::LINK OF THE FIRST NODE
LINK :::IT LINKS TO THE NEXT NODE
INFO :::THE INFORMATION STORED IN THE NODES
N :::THE NUMBER OF NODES
SORT(START,INFO,LINK,N)
1. if START=NULL then: write overflow and return.
2. set TEMP:=START and SAVE:=START.
3. repeat for i=1 to N steps 4,5,6,7,8.
4. set TEMP:=SAVE and FLAG=0.
5. repeat steps 6 and 7 while(LINK[TEMP]!=NULL)
6. if(INFO[TEMP]>INFO[LINK[TEMP]]) then:
set t:=INFO[TEMP].
set INFO[TEMP]:=INFO[LINK[TEMP]]
set INFO[LINK[TEMP]]:=t
set flag:=0 [end of if structure]
7.set TEMP:=LINK[TEMP]
[end of step 5 loop]
8. if (FLAG=0) return.
[end of step 2 loop]
9. return.






merging two linked lists
START1 :::starting LINK OF THE FIRST LIST
START2 :::strting LINK OF THE SECOND LIST
LINK :::IT LINKS TO THE NEXT NODE
INFO :::THE INFORMATION STORED IN THE NODES
N1 :::THE NUMBER OF NODES IN FIRST LIST
N2 :::THE NUMBER OF NODES IN THE SECOND LIST
mergell(START1,START2,LINK,N1,N2,INFO)
1. if START2=NULL then: RETURN
2. if START1=NULL then: START1=START2 .
3. SET TEMP:=START1
4. REPEAT WHILE(LINK[TEMP]!=NULL)
SET TEMP:=LINK[TEMP].
5. SET LINK[TEMP]:=START2.
6. SET N1=N1+N2.
7. SORT(START1,LINK,INFO,N1)
8. RETURN.