Delphi直接插入法排序示例,將一數組按插入法排序的方法進行有序排列,可視化操作窗口,如下圖所示,點擊“排序”按鈕即可實現排序功能。
Delphi插入法排序代碼如下:
01
unit
Unit1;
02
interface
03
uses
04
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
05
Dialogs, StdCtrls;
06
type
07
TForm1 =
class
(TForm)
08
Button1: TButton;
09
ListBox1: TListBox;
10
procedure
Button1Click(Sender: TObject);
11
FormShow(Sender: TObject);
12
private
13
compositor(
var
L:
array
of
integer
);
14
{ Private declarations }
15
public
16
{ Public declarations }
17
end
;
18
19
Form1: TForm1;
20
a:
Array
[
0..10
]
21
s1,s2:
string
22
implementation
23
{$R *.dfm}
24
{ TForm1 }
25
TForm1
.
26
27
i,j:
28
v:
29
begin
30
for
i:=low(L)+
1
to
high(L)
do
31
32
v:=L[i];
33
j:=i;
34
while
(j<>low(L))
and
(L[j-
]<v)
//循環找到插入點
35
36
L[j]:=L[j-
];
//移動元素
37
j:=j-
38
39
L[j]:=v;
//插入元素
40
41
42
43
44
i:
45
46
ListBox1
Items
Clear;
47
Add(
'沒有排序的數組:'
48
Add(s1);
49
'排序後的數組:'
50
compositor(a);
51
s2:=
''
52
i:=
0
53
54
s2:=s2+IntToStr(a[i])+
','
55
56
Add(s2);
57
58
59
60
Integer
61
62
s1:=
63
64
65
a[i]:=i*
2
+random(
)-
5
66
s1:=s1+IntToStr(a[i])+
67
68
69
70
71
為通過 FireDAC(XE5開始支持的) 使用 SqLi
IGPGraphicsPath.PointCount;
TIWTimer //和 TTi
本例效果圖:代碼文件:unit Unit1;i
測試效果圖: 測試代碼:uses GdiPlus;