zoukankan      html  css  js  c++  java
  • 《Delphi 算法与数据结构》学习与感悟[6]: 一个简单的"单向链表"

    unit Unit1;
    
    interface
    
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls;
    
    type
      TForm1 = class(TForm)
        Button1: TButton;
        Button2: TButton;
        procedure FormCreate(Sender: TObject);
        procedure Button1Click(Sender: TObject);
        procedure Button2Click(Sender: TObject);
      end;
    
    var
      Form1: TForm1;
    
    implementation
    
    {$R *.dfm}
    
    type
      PMyRec = ^MyRec;  {把 PMyRec 定义为下面 MyRec 结构的指针类型}
      MyRec = record
        Name: string[8];
        Age : Word;
        Link: PMyRec;   {结构中同时包含同类型的指针, 用于链接其他同类结构}
      end;
    
    var
      R1,R2,R3,R4: MyRec;
    
    {把 R1、R2、R3、R4 够建成一个环环相扣的"链", 这就是一个简单的"链表"}
    procedure TForm1.FormCreate(Sender: TObject);
    begin
      R4.Name := '李四';
      R4.Age  := 16;
      R4.Link := nil;
    
      R3.Name := '张三';
      R3.Age  := 61;
      R3.Link := @R4;
    
      R2.Name := '钱二';
      R2.Age  := 24;
      R2.Link := @R3;
    
      R1.Name := '赵一';
      R1.Age  := 42;
      R1.Link := @R2;
    end;
    
    {现在 , 通过 R1 即可以访问整个链; 但这个链是单向的, 所以叫"单向链表"}    
    procedure TForm1.Button1Click(Sender: TObject);
    begin
      ShowMessage(R1.Name); {赵一}
      ShowMessage(R1.Link^.Name); {钱二}
      ShowMessage(R1.Link^.Link^.Name); {张三}
      ShowMessage(R1.Link^.Link^.Link^.Name); {李四}
    end;
    
    {通过结构指针读取数据可以省略 ^; 所以 Button1Click 可以简写为:}
    procedure TForm1.Button2Click(Sender: TObject);
    begin
      ShowMessage(R1.Name); {赵一}
      ShowMessage(R1.Link.Name); {钱二}
      ShowMessage(R1.Link.Link.Name); {张三}
      ShowMessage(R1.Link.Link.Link.Name); {李四}
    end;
    
    end.
    
  • 相关阅读:
    邮件收件与草稿箱sql
    [转]全局变量与全局静态变量的区别:
    工作:8月份6-14号的工作初级经验(零碎) 关于传值id经常犯的错误
    网络婚礼之AFNetWorking3.0
    网络热恋之NSURLSession
    网络热恋之json解析
    网络热恋之SDWebImage
    网络热恋之XML解析
    网络&热恋NSURLConnection代理及GET¥POST请求
    网络邂逅&网络异步请求
  • 原文地址:https://www.cnblogs.com/del/p/1111539.html
Copyright © 2011-2022 走看看