.


:




:

































 

 

 

 


.




. (, , ).

 

. . , . : .

type

Adr = ^Zveno;

Zveno = record

AdrSled: Adr;

Element: Char;

end;

 

. . . nil.

. . AdrSled , Element .

.

. .

type

Adr1 = ^Zveno1;

Zveno1 = record

AdrSled: Adr1;

Element: < >;

end;


. 2 : . :

type

Adr2 = ^Zveno2

Zveno2 = record

AdrSled: Adr2;

AdrPred: Adr2;

Element: < >;

end;

. :

- ;

- .

 

, : . 2 , :

- FIFO ( , ) ;

- LIFO ( , ) .

: ( ) ( ). .

. . . . , .

Type

(* . Adr1 *)

Stek = Adr1;

Var

St: Stek;

:

St:= nil;

 

3 . , . . , , . :

Type

PElem = ^Elem

Elem = record

Left: Pelem;

Right: Pelem;

Code: < >;

Element: < >;

End;

 

, : . 2 , :

- FIFO ( , ) ,

- LIFO ( , ) .

 

: ( ) ( ). .

FIFO Adr1: Left, Right. Left ― , Right ― . Right. Right . , Left. Left .

 

:

1. .

2. .

3. .

4. .

.

New(Q);

Q^.Element:= Elem;

Q^.AdrSled:= St;

St:= Q;

 

:

1.

2.

3.

4.

.

A:= St^.Element;

Q:= St;

St:= St^.AdrSled;

Dispose(Q);

 

Left Right nil. .

 

:

1.

2.

3. nil AdrSled

4.

5.

.

New(Q);

Right^.AdrSled:= Q;

Q^.AdrSled:= nil;

Q^.Element:= El;

Right:= Q;


:

1.

2.

3.

4.

.

Elem:= Left^.Element;

Q:= Left;

Left:= Left^.AdrSled;

Dispose(Q);

:

.

1 , . : ― ; ― ; ― . : ― .
2 , . : ― ; ― ; ― . : ― .
3 , . : ― ; ― ; ― . : ― .
4 , . : ― ; ― ; ― ; ― ; ― . : ― .
5 , . : ― ; ― ; ― ; ― ; ― . ; ― .

 

6 , . : ― ; ― ; ― ; ― . .
7 , . : ― ; ― ; ― ; ― . ; ― .
8 , . : ― ; ― ; ― . ; ― .
9 , . : ― ; ― ; ― . ; ― .
10 , . : ― ; ― ; ― ; ― ; ― . ; ― .
11 , . : ― ; ― ; ― ; ― ; ― . ; ― .

 

12 , . : ― ; ― ; ― ; ― . ; ― .
13 , . : ― ; ― ; ― ; ― . ; ― .
14 , . : ― ; ― ; ― . ; ― .
15 , . : ― ; ― ; ― . ; ― .
16 , . : ― ; ― ; ― ; ― ; ― . ; ― .

:

1. .

2. .

, , . .






:


: 2016-10-06; !; : 439 |


:

:

.
==> ...

1613 - | 1466 -


© 2015-2024 lektsii.org - -

: 0.024 .