-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDataTypes.pas
74 lines (59 loc) · 1.54 KB
/
DataTypes.pas
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
unit DataTypes;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls;
Type
//Ãðàôè÷åñêîå äåðåâî
TItemGT= String;
TGTree= ^TNodeGT;
TSENPos=record
Start, Ending, Now: real;
end;
TNodeGT=record
Edit: TEdit;
Rect: TRect;
Next: Array of TGTree;
Parent: TGTree;
Pos:record
left,Top:TSENPos
end
end;
TMassCount= Array of integer;
//Ñòåê
TItemS = record
value: String; // òèï èíôîðìàöèîííîå ïîëå //Ýëåìåíò Ñòåêà - ñòðîêà, â êîòîðîé çíà÷åíèÿ óçëîâ äåðåâà
end;
TStack =^ TNodeS; // ññûëêà íà óçåë
TNodeS = record
Data: TItemS; // èíôîðìàöèîííîå ïîëå
Next: TStack; // ññûëêà íà ñëåäóþùèé óçåë
end;
//Î÷åðåäü
TItemQ = TGTree; // òèï èíôîðìàöèîííîãî ïîëÿ
TQueue =^TNodeQ; // ññûëêà íà óçåë
// îïèñàíèå óçëà
TNodeQ = record
Data: TItemQ; // èíôîðìàöèîííîå ïîëå //Ýëåìåíò î÷åðåäè - Ãðàô Äåðåâî
Next: TQueue; // ññûëêà íà ñëåäóþùèé óçåë
end;
// ññûëêà íà î÷åðåäü
TPointerQueue = record
Head: TQueue; // óêàçàòåëü íà ãîëîâó î÷åðåäè
Tail: TQueue; // óêàçàòåëü íà õâîñò î÷åðåäè
end;
TInfoRecord=record
Quantity, Depth: integer;
Min, Max: TGTree;
end;
TMass= array of word;
var SelectNode: TGTree;
ColorSNode, BackGroundColor: TColor;
MIn, MCol : TMassCount;
GrafFlag, rgDWFlag: Boolean;
QueueForArrow : TPointerQueue;
InfoRecord: TInfoRecord;
Index, kMaxSpeed: integer;
strOrder: string;
implementation
end.