Upload
mayank-yadav
View
225
Download
0
Embed Size (px)
DESCRIPTION
data stuructures lesson 3
Citation preview
7/21/2019 unit-III -
http://slidepdf.com/reader/full/unit-iii- 1/31
| Jul 2012| © 2012 UPES
UPES
LINKED LIST
7/21/2019 unit-III -
http://slidepdf.com/reader/full/unit-iii- 2/31
© 2012 UPESJul 2012
Jul 2012
Contents LINKED LIST: Concept, Types, Repesent!t"on !n# $pe!t"ons
%l&o"t'(s )o L"n*e# l"st $pe!t"ons: T!+es!l Se!c', Inset"on-
L"n*e# l"st #elet"on- Concepts: $+e)lo. Un#e)lo., /!!&e
Collect"on Co(p!ct"on
L"n*e# Repesent!t"on o) St!c* !n# ueue
7/21/2019 unit-III -
http://slidepdf.com/reader/full/unit-iii- 3/31
© 2012 UPESJul 2012
Jul 2012
'!t "s ! L"n*e# L"st 3
% l"n*e# l"st "s !n o#ee# collect"on o) )"n"te, 'o(o&eneous #!t!ele(ents c!lle# no#es .'ee t'e l"ne! o#e "s (!"nt!"ne# y (e!nso) l"n*s o po"ntes-
%n ele(ent "n ! l"n*e# l"st "s spec"!lly te(e# !s no#e, .'"c' cons"stso) t.o )"el#s: D%T% 4to stoe t'e !ctu!l "n)o(!t"on5 !n# LINK 4to po"ntto t'e ne6t no#e5-
7/21/2019 unit-III -
http://slidepdf.com/reader/full/unit-iii- 4/31
© 2012 UPESJul 2012
Jul 2012 CIS 078
'!t #o t'ese tools '!+e "n co((on 3
L"n*e# L"st ."t' 7 no#es
7/21/2019 unit-III -
http://slidepdf.com/reader/full/unit-iii- 5/31
© 2012 UPESJul 2012
Jul 2012
'y L"n*e# l"st $+e %!y
%!y "s ! #!t! stuctue .'ee ele(ents !e stoe# "n consecut"+e
(e(oy loc!t"ons-
In o#e to occupy t'e !#9!cent sp!ce, loc* o) (e(oy t'!t "s
eu"e# )o t'e !!y s'oul# e !lloc!te# e)oe '!n#-
$nce (e(oy "s loc!te# "t c!nnot e e6ten#e# !ny (oe- T'"s "s .'y
!!y "s *no.n !s static data structure.
In cont!st to t'"s, l"n*e# l"st "s c!lle# dynamic data structure .'ee
!(ount o) (e(oy eu"e# c!n e +!"e# #u"n& "ts use-
In l"n*e# l"st, !#9!cency et.een t'e ele(ents !e (!"nt!"ne# y
(e!ns o) links o pointers-
7/21/2019 unit-III -
http://slidepdf.com/reader/full/unit-iii- 6/31
© 2012 UPESJul 2012
Jul 2012
Types o) L"n*e# L"st
L"n*e# L"st c!n e cl!ss")"e# "nto t'ee (!9o &oups.
S"n&le l"n*e# l"st
C"cul! l"n*e# l"st
Doule l"n*e# l"st
Stuctue o) ! no#e !n# ! #oule l"n*e# l"st
C"cul! l"n*e# l"st
7/21/2019 unit-III -
http://slidepdf.com/reader/full/unit-iii- 7/31© 2012 UPESJul 2012Jul 2012
Repesent!t"on o) ! L"n*e# L"st
T'ee !e t.o .!ys to epesent ! l"n*e# l"st "n (e(oy.
St!t"c epesent!t"on us"n& !!y-
Dyn!("c epesent!t"on us"n& )ee pool o) sto!&e-
St!t"c epesent!t"on o) ! s"n&le l"n*e# l"st (!"nt!"ns t.o !!ys: one
!!y )o #!t! !n# ot'e )o l"n*s-
St!t"c epesent!t"on o) ! s"n&le l"n*e# l"st us"n& !!ys
7/21/2019 unit-III -
http://slidepdf.com/reader/full/unit-iii- 8/31© 2012 UPESJul 2012Jul 2012
St!t"c Repesent!t"on us"n& %!y T.o p!!llel !!ys o) eu!l s";e !e !lloc!te# .'"c' s'oul# e
su))"c"ent to stoe t'e ent"e l"n*e# l"st- Ne+et'eless t'"s cont!#"cts t'e "#e! o) l"n*e# l"st 4t'!t "s non<
cont!&"ous loc!t"on o) ele(ents5
=ut "n so(e po&!(("n& l!n&u!&es, )o e6!(ple, %L/$L, >$RTR%N,
=%SIC, etc-, suc' ! epesent!t"on "s t'e only epesent!t"on to
(!n!&e ! l"n*e# l"st-
7/21/2019 unit-III -
http://slidepdf.com/reader/full/unit-iii- 9/31© 2012 UPESJul 2012Jul 2012
Dyn!("c Repesent!t"on In t'"s (et'o#, t'ee "s ! (e(oy !n* 4! collect"on o) )ee (e(oy
sp!ces5, !n# ! (e(oy (!n!&e 4! po&!(, "n )!ct5- Du"n& t'e ce!t"on o) l"n*e# l"st, .'ene+e ! no#e "s eu"e# t'e
euest "s pl!ce# to t'e (e(oy (!n!&e-
?e(oy (!n!&e ."ll t'en se!c' t'e (e(oy !n* )o t'e loc*
eueste# !n# ") )oun# &!nts ! #es"e# loc* to t'e c!lle-
%&!"n, t'ee "s !lso !not'e po&!( c!lle# &!!&e collecto, "t pl!ys
.'ene+e ! no#e "s no (oe "n use@ "t etuns t'e unuse# no#e to t'e
(e(oy !n*-
7/21/2019 unit-III -
http://slidepdf.com/reader/full/unit-iii- 10/31
© 2012 UPESJul 2012Jul 2012
%lloc!t"on o) No#e % l"st o) !+!"l!le (e(oy sp!ce "s t'ee
.'ose po"nte "s stoe# "n %A%IL- >o ! euest o) ! no#e, t'e l"st %A%IL "s
se!c'e# )o t'e loc* o) "&'t s";e-
I) %A%IL "s null o t'e loc* o) #es"e# s";e
"s not )oun# (e(oy (!n!&e ."ll etun !
(ess!&e !cco#"n&ly-
Let, t'e loc* "s )oun# !n# let "t e B-
T'en (e(oy (!n!&e ."ll etun t'e
po"nte o) B to t'e c!lle "n ! te(po!y
u))e, s!y NE-
T'e ne.ly !+!"le# no#e B t'en c!n e
"nsete# !t !ny pos"t"on "n t'e l"n*e# l"st y
c'!n&"n& t'e po"ntes o) t'e concene#
no#es-
%lloc!t"on o) ! no#e )o(
(e(oy !n* to ! l"n*e# l"st
7/21/2019 unit-III -
http://slidepdf.com/reader/full/unit-iii- 11/31
© 2012 UPESJul 2012Jul 2012
Retun"n& ! no#e )o( l"st to (e(oy !n*
7/21/2019 unit-III -
http://slidepdf.com/reader/full/unit-iii- 12/31
© 2012 UPESJul 2012Jul 2012
$pe!t"ons on ! S"n&le L"n*e# L"st
T!+es"n& ! l"st
Inset"on o) ! no#e "nto ! l"st
Delet"on o) ! no#e )o( ! l"st
Copy ! l"n*e# l"st to (!*e ! #upl"c!te
?e&"n& t.o l"n*e# l"sts "nto ! l!&e l"st
Se!c'"n& )o !n ele(ent "n ! l"st
7/21/2019 unit-III -
http://slidepdf.com/reader/full/unit-iii- 13/31
© 2012 UPESJul 2012Jul 2012
T!+es"n& ! S"n&le L"n*e# L"st
To t!+ese ! s"n&le l"n*e# l"st .e (e!n to +"s"t e+ey no#e "n t'e l"st
st!t"n& )o( t'e )"st no#e to t'e l!st-
Algorithm Traverse_SL
Input: E%DER "s t'e po"nte to t'e 'e!#e no#e-
$utput: %cco#"n& to t'e Pocess4 5
D!t! stuctues: % s"n&le l"n*e# l"st .'ose !##ess o) t'e st!t"n& no#e "s *no.n )o(E%DER-
1- pt E%DERFLINK GG pt "s to stoe t'e po"nte to ! cuent no#e
2- '"le 4pt FLINK H NULL5 #o GG Cont"nue t"ll t'e l!st no#e
- Pocess4pt5 GG Pe)o( PR$CESS4 5 on t'e cuent no#e
- pt ptFLINK GG ?o+e to t'e ne6t no#e
- En#'"le
7- Stop
7/21/2019 unit-III -
http://slidepdf.com/reader/full/unit-iii- 14/31
© 2012 UPESJul 2012Jul 2012
Inset"on o) ! No#e "nto ! S"n&le L"n*e# L"st
T'ee !e +!"ous pos"t"ons .'ee ! no#e c!n e "nsete#-
Inset !t )ont 4!s ! )"st ele(ent5
Inset !t en# 4!s ! l!st ele(ent5
Inset !t !ny pos"t"on
7/21/2019 unit-III -
http://slidepdf.com/reader/full/unit-iii- 15/31
© 2012 UPESJul 2012Jul 2012
Poce#ue /etNo#e
Input: N$DE "s t'e type o) t'e #!t! )o .'"c' ! (e(oy '!s to e !lloc!te#-
$utput: Retun ! (ess!&e ") t'e !lloc!t"on )!"ls else t'e po"nte to t'e (e(oy
loc* !lloc!te#-
1- I) 4%A%IL NULL5 GG %A%IL "s t'e po"nte to t'e pool o) )ee sto!&e
2- Retun4NULL5
- P"nt MInsu))"c"ent (e(oy: Un!le to !lloc!te (e(oy
- Else GG Su))"c"ent (e(oy "s !+!"l!le
- pt %A%IL GG St!t )o( t'e loc!t"on, .'ee %A%IL po"nts
7- '"le 4S";e$)4pt5 H S";e$)4N$DE55 !n# 4ptFLINK H NULL5 #o
GG T"ll t'e #es"e# loc* "s not )oun# o se!c' e!c'es !t t'e en# o) t'e pool
O- pt1 pt GG To *eep t'e t!c* o) t'e pe+"ous loc*
8- pt ptFLINK GG ?o+e to t'e ne6t loc*
- En#'"le
7/21/2019 unit-III -
http://slidepdf.com/reader/full/unit-iii- 16/31
© 2012 UPESJul 2012Jul 2012
Poce#ue /etNo#e 4Contt--5
10- I) 4S";e$)4pt5 S";e$)4N$DE55 GG ?e(oy loc* o) "&'t s";e "s )oun#
11- pt1FLINK ptFLINK GG Up#!te t'e %A%IL L"st
12- Retun4pt5
1- Else
1- P"nt MT'e (e(oy loc* "s too l!&e to )"t
1- Retun4NULL517- En#I)
1O- En#I)
18- Stop
Node: T'e GetNode4 5 poce#ue !s #e)"ne# !o+e "s 9ust to un#est!n# 'o. ! no#ec!n e !lloc!te# )o( t'e !+!"l!le sto!&e sp!ce- In C, CQQ !n# J!+!, t'ee "s ! l"!y
out"ne )o #o"n& t'e s!(e suc' !s alloc 45, malloc 45 4"n C, CQQ5, new 4"n CQQ, J!+!5-
7/21/2019 unit-III -
http://slidepdf.com/reader/full/unit-iii- 17/31
© 2012 UPESJul 2012Jul 2012
Inset"on o) ! no#e "nto ! s"n&le l"n*e# l"st !t t'e )ont
Input: HEADER "s t'e po"nte to t'e 'e!#e no#e !n# X "s t'e #!t! o) t'e no#e to e
"nsete#- Output: % s"n&le l"n*e# l"st ."t' ne.ly "nsete# no#e "n t'e )ont o) t'e l"st-
D!t! stuctues: % s"n&le l"n*e# l"st .'ose !##ess o) t'e st!t"n& no#e "s *no.n )o(
HEADER -
1- ne. /etNo#e4N$DE5 GG /et ! (e(oy loc* o) type N$DE !n# stoe "ts po"nte "n ne.
2- I) 4ne. NULL5 t'en
- P"nt M?e(oy un#e)lo.: No "nset"on
- E6"t GG u"t t'e po&!(
- Else
7- ne.FLINK E%DERFLINK GG C'!n&e o) po"nte 1
O- ne.FD%T% B GG Copy t'e #!t! B to ne.ly !+!"le# no#e
8- E%DERFLINK ne. GG C'!n&e o) po"nte 2
- En#I)
10- Stop
7/21/2019 unit-III -
http://slidepdf.com/reader/full/unit-iii- 18/31
© 2012 UPESJul 2012Jul 2012
Inset"on o) ! no#e "nto ! s"n&le l"n*e# l"st !t t'e en#
Input: HEADER is the pointer to the header node and X is the data of the node to be
inserted. Output: A single linked list with newly inserted node having data X at end.
Data structures: A single linked list whose address of the starting node is known from
the HEADER.
1- ne. /etNo#e4N$DE5 GG /et ! (e(oy loc* o) type N$DE !n# etuns "ts po"nte !s ne.
2- I) 4ne. NULL5 t'en G Un!le to !lloc!te (e(oy )o ! no#e
- P"nt M?e(oy "s "nsu))"c"ent: Inset"on "s not poss"le
- E6"t GG u"t t'e po&!(
- Else GG ?o+e to t'e en# o) t'e &"+en l"st !n# t'en "nset
7- pt E%DER GG St!t )o( t'e E%DER no#e
O- '"le 4ptFLINK H NULL5 #o GG ?o+e to t'e en#
8- pt ptFLINK GG C'!n&e po"nte to t'e ne6t no#e
- En#'"le
7/21/2019 unit-III -
http://slidepdf.com/reader/full/unit-iii- 19/31
© 2012 UPESJul 2012Jul 2012
Inset"on o) ! no#e l"n*e# l"st !t t'e en# 4Cont--5
10- ptFLINK ne. GG C'!n&e t'e l"n* )"el# o) l!st no#e: Po"nte 1 !s "n >"&ue
11- ne.FD%T% B GG Copy t'e content B "nto ne. no#e
12- En#I)
1- Stop
7/21/2019 unit-III -
http://slidepdf.com/reader/full/unit-iii- 20/31
© 2012 UPESJul 2012Jul 2012
Insertion of a node linked list at any position
Input: E%DER "s t'e po"nte to t'e 'e!#e no#e, B "s t'e #!t! o) t'e no#e to e "nsete#, !n#
KE e"n& t'e #!t! o) t'e *ey no#e !)te .'"c' t'e no#e '!s to e "nsete#-
$utput: % s"n&le l"n*e# l"st en"c'e# ."t' ne.ly "nsete# no#e '!+"n& #!t! B !)te t'e no#e ."t'
#!t! KE-
D!t! stuctues: % s"n&le l"n*e# l"st .'ose !##ess o) t'e st!t"n& no#e "s *no.n )o( E%DER-
1- ne. /etNo#e4N$DE5 GG /et ! (e(oy loc* o) type N$DE !n# etuns "ts po"nte !s ne.
2- I) 4ne. NULL5 t'en GG Un!le to !lloc!te (e(oy )o ! no#e- P"nt M?e(oy "s "nsu))"c"ent: Inset"on "s not poss"le
- E6"t GG u"t t'e po&!(
- Else
7- pt E%DER GGSt!t )o( t'e E%DER no#e
O- '"le 4ptFD%T% H KE5 !n# 4ptFLINK H NULL5 #o GG ?o+e to t'e no#e '!+"n& #!t! !s KEo !t t'e en# ") KE "s not "n t'e l"st
8- pt ptFLINK
- En#'"le
7/21/2019 unit-III -
http://slidepdf.com/reader/full/unit-iii- 21/31
© 2012 UPESJul 2012Jul 2012
Insertion of a node linked list at any position!ont"#
10- I) 4ptFLINK NULL5 t'en GG Se!c' )!"ls to )"n# t'e KE
11- P"nt MKE "s not !+!"l!le "n t'e l"st
12- E6"t
1- Else
1- ne.FLINK ptFLINK
1- ne.FD%T% B
17- ptFLINK ne. GG C'!n&e
1O- En#I)
18- En#I)
1- Stop
7/21/2019 unit-III -
http://slidepdf.com/reader/full/unit-iii- 22/31
© 2012 UPESJul 2012Jul 2012
Delet"on o) ! no#e )o( ! s"n&le l"n*e# l"st
L"*e "nset"ons, t'ee !e !lso +!"ous c!ses o) #elet"on:
Delet"on !t t'e )ont o) t'e l"st
Delet"on !t t'e en# o) t'e l"st
Delet"on !t !ny pos"t"on "n t'e l"st
7/21/2019 unit-III -
http://slidepdf.com/reader/full/unit-iii- 23/31
© 2012 UPESJul 2012Jul 2012
Poce#ue Retun No#e
Input: PTR "s t'e po"nte o) ! no#e to e etune# to ! l"st po"nte# y t'e po"nte %A%IL-
$utput: T'e no#e "s "nsete# to t'e l"st %A%IL !t en#-
1- pt1 %A%IL GG St!t )o( t'e e&"nn"n& o) t'e )ee pool
2- '"le 4pt1FLINK HNULL5 #o
- pt1 pt1FLINK
- En# '"le
- pt1FLINK PTR GG Inset t'e no#e !t t'e en#
7- PTRFLINK NULL GG No#e "nsete# "s t'e l!st no#e
O- Stop
Note: T'e poce#ue ReturnNode4 5 "nsets t'e )ee no#e !t t'e en# o) t'e pool o) )ee
sto!&e .'ose 'e!#e !##ess "s AVAI- %lten!t"+ely, .e c!n "nset t'e )ee no#e !tt'e )ont o !t !ny pos"t"on o) t'e AVAI l"st .'"c' "s le)t !s !n e6ec"se- In C, !n# CQQ
t'"s poce#ue "s e!l";e# !s ! l"!y out"ne !ree45-
7/21/2019 unit-III -
http://slidepdf.com/reader/full/unit-iii- 24/31
© 2012 UPESJul 2012Jul 2012
Delet"on o) ! no#e )o( ! s"n&le l"n*e# l"st !t t'e )ont
Input: E%DER "s t'e po"nte to t'e 'e!#e no#e-
$utput: % s"n&le l"n*e# l"st el"("n!t"n& t'e no#e !t t'e )ont-
D!t! stuctues: % s"n&le l"n*e# l"st .'ose !##ess o) t'e st!t"n& no#e "s *no.n )o(
E%DER-
1- pt E%DERFLINK GG Po"nte to t'e )"st no#e
2- I) 4pt NULL5 t'en GG I) t'e l"st "s e(pty
- P"nt MT'e l"st "s e(pty: No #elet"on
- E6"t GG u"t t'e po&!(
- Else GG T'e l"st "s not e(pty
7- pt1 ptFLINK GG pt1 "s t'e po"nte to t'e secon# no#e, ") !ny
O- E%DERFLINK pt1 GG Ne6t no#e eco(es t'e )"st no#e !s "n >"&ue
8- RetuNo#e4pt5 GG Delete# no#e "s )ee# to t'e ?e(oy !n* )o )utue use
- En#I)
10- Stop
7/21/2019 unit-III -
http://slidepdf.com/reader/full/unit-iii- 25/31
© 2012 UPESJul 2012Jul 2012
Delet"on o) ! no#e )o( ! s"n&le l"n*e# l"st !t t'e en#
Input: E%DER "s t'e po"nte to t'e 'e!#e no#e-
$utput: % s"n&le l"n*e# l"st el"("n!t"n& t'e no#e !t t'e en#-
D!t! stuctues: % s"n&le l"n*e# l"st .'ose !##ess o) t'e st!t"n& no#e "s *no.n )o(
E%DER-
1- pt E%DER GG ?o+e )o( t'e 'e!#e no#e
2- I) 4ptFLINK NULL5 t'en
- P"nt MT'e l"st "s e(pty: No #elet"on poss"le
- E6"t GG u"t t'e po&!(
- Else
7- '"le 4ptFLINK HNULL5 #o GG /o to t'e l!st no#e
O- pt1 pt GG To stoe t'e pe+"ous po"nte
8- pt ptFLINK GG ?o+e to t'e ne6t
- En#'"le
7/21/2019 unit-III -
http://slidepdf.com/reader/full/unit-iii- 26/31
© 2012 UPESJul 2012Jul 2012
Delet"on o) ! no#e )o( ! l"n*e# l"st !t t'e en# 4Contt-5
10- pt1FLINK NULL GG L!st ut one no#e eco(e t'e l!st no#e !s "n >"&ue
11- RetunNo#e4pt5 GG Delete# no#e "s etune# to t'e (e(oy !n* )o )utue use
12- En#I)
1- Stop
7/21/2019 unit-III -
http://slidepdf.com/reader/full/unit-iii- 27/31
© 2012 UPESJul 2012Jul 2012
Delet"on o) ! no#e )o( ! l"n*e# l"st !t !ny pos"t"on
Input: E%DER "s t'e po"nte to t'e 'e!#e no#e, KE "s t'e #!t! content o) t'e no#e to
e #elete#-
$utput: % s"n&le l"n*e# l"st e6cept t'e no#e ."t' #!t! content !s KE-
D!t! stuctues: % s"n&le l"n*e# l"st .'ose !##ess o) t'e st!t"n& no#e "s *no.n )o(
E%DER-
1- pt1 E%DER GG St!t )o( t'e 'e!#e no#e
2- pt pt1FLINK GG T'"s po"nts to t'e )"st no#e, ") !ny
- '"le 4pt H NULL5 #o
- I) 4ptFD%T% H KE5 t'en GG I) not )oun# t'e *ey
- pt1 pt GG Keep ! t!c* o) t'e po"nte o) t'e pe+"ous no#e
7- pt ptFLINK GG ?o+e to t'e ne6t
O- Else
7/21/2019 unit-III -
http://slidepdf.com/reader/full/unit-iii- 28/31
© 2012 UPESJul 2012Jul 2012
Delet"on o) ! no#e )o( ! l"n*e# l"st !t !ny pos"t"on
8- pt1FLINK ptFLINK GG L"n* )"el# o) t'e pe#ecesso "s to po"nt t'e
GG Successo o) no#e un#e #elet"on, see >"&ue
- RetunNo#e4pt5 GG Retun t'e #elete# no#e to t'e (e(oy !n*
10- E6"t GG E6"t t'e po&!(
11- En#I)
12- En#'"le
1- I) 4pt NULL5 t'en GG 'en t'e #es"e# no#e "s not !+!"l!le "n t'e l"st
1- P"nt MNo#e ."t' KE #oes not e6"st: No #elet"on
1- En#I)
17- Stop
7/21/2019 unit-III -
http://slidepdf.com/reader/full/unit-iii- 29/31
© 2012 UPESJul 2012Jul 2012
L"n*e# L"st Repesent!t"on o) St!c*s
S"n&le l"n*e# l"st stuctue "s su))"c"ent to epesent !ny st!c*-
T'e D%T% )"el# "s )o t'e ITE?, !n# LINK )"el# "s !s usu!l to po"nt to t'e ne6t "te(-
PUS ope!t"on ."ll !## ! ne. no#e !t t'e )ont-
P$P ope!t"on ."ll e(o+e ! no#e )o( t'e )ont o) t'e l"st-
7/21/2019 unit-III -
http://slidepdf.com/reader/full/unit-iii- 30/31
© 2012 UPESJul 2012Jul 2012
Pus' $pe!t"on us"n& L"n*e# L"st
Input: ITE? "s t'e "te( to e "nsete#-
$utput: % s"n&le l"n*e# l"st ."t' ! ne.ly "nsete# no#e ."t' #!t! content ITE?-
D!t! stuctue: % s"n&le l"n*e# l"st stuctue .'ose po"nte to t'e 'e!#e "s *no.n )o(
ST%CKE%D !n# T$P "s t'e po"nte to t'e )"st no#e-
Steps$
1- ne. /etNo#e4N$DE5 G Inset !t )ont G
2- ne.FD%T% ITE?
- ne.FLINK T$P
- T$P ne.
- ST%CKE%DFLINK T$P
7- Stop
7/21/2019 unit-III -
http://slidepdf.com/reader/full/unit-iii- 31/31
© 2012 UPESJ l 2012
Pop $pe!t"on us"n& L"n*e# L"st
Input: % st!c* ."t' ele(ents-
$utput: T'e e(o+e# "te( "s stoe# "n ITE?-
D!t! stuctue: % s"n&le l"n*e# l"st stuctue .'ose po"nte to t'e 'e!#e "s *no.n )o(
ST%CKE%D !n# T$P "s t'e po"nte to t'e )"st no#e-
1- I) T$P NULL
2- P"nt MSt!c* "s e(pty
- E6"t
- Else
- pt T$PFLINK
7- ITE? T$PFD%T%
O- ST%CKE%DFLINK pt 8- T$P pt
- En#I)
10- Stop