『Delphiアルゴリズムとデータ構造』学習と悟り[7]:チェーンテーブルと配列の異同
1426 ワード
まず、
前の例は、配列でも実現でき、より簡単です.
1、配列中の要素はメモリの中で連続している.チェーンメーターは違います.
2、配列のメモリは一度に割り当てられ、解放される.チェーンメーターは違います.
3、チェーンテーブルの位置決め要素は順藤摸瓜である.配列は一歩一歩で、もっと速いです.
4、チェーンテーブルは要素の挿入と削除を便利にすることができる.配列で実現するのは面倒で時間がかかり、ほとんど誰もそうしない.
5、チェーンテーブルはより多くの拡張可能性を持っている!
前の例は、配列でも実現でき、より簡単です.
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
type
MyRec = record
Name: string[8];
Age : Word;
end;
var
RecArr: array[0..3] of MyRec;
procedure TForm1.FormCreate(Sender: TObject);
begin
RecArr[3].Name := ' ';
RecArr[3].Age := 16;
RecArr[2].Name := ' ';
RecArr[2].Age := 61;
RecArr[1].Name := ' ';
RecArr[1].Age := 24;
RecArr[0].Name := ' ';
RecArr[0].Age := 42;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
ShowMessage(RecArr[0].Name); { }
ShowMessage(RecArr[1].Name); { }
ShowMessage(RecArr[2].Name); { }
ShowMessage(RecArr[3].Name); { }
end;
end.
チェーンテーブルと配列の違い:1、配列中の要素はメモリの中で連続している.チェーンメーターは違います.
2、配列のメモリは一度に割り当てられ、解放される.チェーンメーターは違います.
3、チェーンテーブルの位置決め要素は順藤摸瓜である.配列は一歩一歩で、もっと速いです.
4、チェーンテーブルは要素の挿入と削除を便利にすることができる.配列で実現するのは面倒で時間がかかり、ほとんど誰もそうしない.
5、チェーンテーブルはより多くの拡張可能性を持っている!