From: "Zeg" <zeg.nospam@9online.fr>
Subject: Re: chained List manipulation without recusrsion : lost the begining of my List!
Date: Thu, 15 May 2003 15:16:04 +0200
Date: 2003-05-15T15:16:04+02:00 [thread overview]
Message-ID: <ba040h$nb5$1@aphrodite.grec.isp.9tel.net> (raw)
In-Reply-To: x7vfzngg39y.fsf@smaug.pushface.org
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 2382 bytes --]
I missed inserting at the head of the List so this the
ultimate code
procedure Insert_iteratif(E : in Element; L : in out Liste) is
Aux : Liste := L;
Z : Liste;
begin
if (L = null) then
L := new Maillon'(E,null);
else
while (Aux /= null) loop
if (Aux.all.valeur > E) then
if (z = null) then
L := new Maillon'(E,L);
else
z.all.suivant := new Maillon'(E,Aux);
end if;
exit;
elsif (Aux.all.suivant = null) then
z.all.suivant := new
Maillon'(E,null);
exit;
end if;
z := Aux ;
Aux := Aux.all.suivant;
end loop;
end if;
end Insert_iteratif;
"Simon Wright" <simon@pushface.org> a �crit dans le message de
news:x7vfzngg39y.fsf@smaug.pushface.org...
> "Zeg" <zeg.nospam@9online.fr> writes:
>
> > procedure Insert_iteratif(E : in Element; L : in out Liste) is
> > Aux : Liste := L;
> > Z : Liste := null;
>
> You don't need to initialize access variables, they are automatically
> set to null for you
>
> > begin
> > if (Aux = null) then
> > Aux := new Maillon'(E,null);
>
> L was empty, so what is it pointing to now? Should you have altered it?
>
> > else
> > while (Aux /= null) loop
> > if (Aux.all.valeur > E) then
> > L := new Maillon'(E,Aux);
>
> What has happened to all the previous elements in the list? (that L
> used to be pointing to)
>
> > exit;
> > elsif (Aux.all.suivant = null) then
> > L:= new Maillon'(E,null);
>
> What has happened to all the previous elements in the list?
>
> > exit;
> > end if;
> > z := Aux ;
>
> What is Z for? You don't read it anywhere
>
> > Aux := Aux.all.suivant;
> > end loop;
> > end if;
> >
> > end Insert_iteratif;
>
> It might help you to draw a picture of Maillons linked into a Liste,
> and how you want a new Maillon to be linked in.
next prev parent reply other threads:[~2003-05-15 13:16 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-05-14 23:20 chained List manipulation without recusrsion : lost the begining of my List! Zeg
2003-05-15 5:58 ` Simon Wright
2003-05-15 12:25 ` Zeg
2003-05-15 13:16 ` Zeg [this message]
2003-05-15 19:02 ` Jeffrey Carter
2003-05-16 1:11 ` Robert A Duff
2003-05-17 7:03 ` Simon Wright
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox