Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Free Pascal'da AVLTree
#1
Merhaba, bir AVLTree ve ona bağlı AVLTreeNode'lar oluşturdum. Ancak düğümleri ters sırada ekliyor. Kodun bir kısmı şu şekilde:

 
function CompareDirData(Data1, Data2: Pointer): Integer;
begin
  Result:=AnsiCompareFileName(TDirData(Data1).FileName, TDirData(Data2).FileName);
end;
...
while not eof(TfIn) do
begin
  ReadLn(TfIn, Str);
  if (Str = '') then
  begin
    Continue;
  end;
  Match:=Copy(Str, 1, 4);
  DirData1:=TDirData.Create;
  DirData1.Filename:=Match;
  DirData1.Content:='Test';
  TreeNode:=TAVLTreeNode.Create;
  TreeNode.Data:=DirData1;
  Tree.Add(TreeNode);
end;
...
Tree:=ReadTextContent();
for Node in Tree do
begin
  Data:=TDirData(Node.Data);
  WriteLn(Data.Filename);
end;        
Düğümleri baştan sona doğru nasıl ekleyebilirim? Ayrıca pointerları tam bilmiyorum. Hangi değişkeni nasıl silmem gerekli?
Cevapla
#2
Sanıyorum sizin kendi implementasyonunuz, implementasyon detayları paylaşılırsa yardımcı olacak arkadaşlar artabilir.
Pointer'lar icin New ve Dispose fonksiyonlarını inceleyebilirsiniz.Yine Free ve FreeAndNil methodları mevcut.
Buradaki dokümani ve ilgili unit içindeki implementasyon detaylarını inceleyebilirsiniz belki...
Kolay gelsin.
WWW
Cevapla
#3
Cevap için teşekkür ederim en kısa zamanda geri döneceğim.
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Boş yere free etmeye uğraştığımı düşünüyorum. bibilen 11 717 02-05-2020, Saat: 11:18
Son Yorum: bibilen
  Datasnap free yapmama sorunu. seci20 1 521 24-10-2019, Saat: 08:16
Son Yorum: 3ddark
  Nesne Neden Free Olmuyor? Halil Han Badem 3 818 31-07-2019, Saat: 14:28
Son Yorum: sddk
  Json Free Etmek yhackup 4 1.251 31-07-2019, Saat: 11:17
Son Yorum: Halil Han Badem
Lightbulb OCR Space - Free OCR API ( Ticari Serbest, Günde 500, ayda 25000 Sorgu ücretsiz ) mrmarman 6 1.467 12-02-2019, Saat: 09:38
Son Yorum: mrmarman



Konuyu Okuyanlar: 1 Ziyaretçi