trees vectors iterators
Download
Skip this Video
Download Presentation
Trees, Vectors, Iterators

Loading in 2 Seconds...

play fullscreen
1 / 13

Trees, Vectors, Iterators - PowerPoint PPT Presentation


  • 102 Views
  • Uploaded on

Trees, Vectors, Iterators. ADT. Abstract Data Type (ADT) vs implementation -Soyut Veri Türleri -Uygulamaları. Ağaçlar ( Trees ). Listelerde olduğu gibi ağaçlar da birçok elemandan (Node) oluşur.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Trees, Vectors, Iterators' - mary-mullins


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide2
ADT
  • Abstract Data Type (ADT) vs implementation-Soyut Veri Türleri -Uygulamaları
a a lar trees
Ağaçlar (Trees)
  • Listelerde olduğu gibi ağaçlar da birçok elemandan (Node) oluşur.
  • Yaygın bir ağaç şekli ikili ağaçlardır (Binary Trees). Bu ağaçlarda herbir eleman diğer iki elemana referans taşır.

public class Agac { Object veri; Agacsol, sag;

}

slide4

Ağacın tepesi kök, diğer elemanlar dal, null referans taşıyan elemanlar ise yaprak olarak adlandırılır.

slide5

Kurucu metod

public Agac(Object veri, Agac sol, Agac sag) { this.veri = veri;         this.sol = sol;         this.sag = sag;}

  • Önce çocuk elemanları oluşturalım:
    • Agac sol = new Agac (new Integer(2), null, null); Agac sag = new Agac (new Integer(3), null, null);
  • Kök elemanın oluşturulması:
    • Agacagac = new Agac (new Integer(1), sol, sag);
zyineleme metoduyla a a elemanlar na ula lmas
Özyineleme metoduyla ağaç elemanlarına ulaşılması

    public static int total (Agac agac) {         if (agac == null) return 0;         Integer veri = (Integer) agac.veri;         return veri.intValue() + total (agac.sol) + total (agac.sag);  }

fade a a lar expression trees
İfade ağaçları (Expression Trees)
  • 1 + 2 * 3
  • Çarpma işleminin toplama işleminden önce yapılacağı bilinmezse bu işlemin sonucu belirsizdir.
a a lar n yazd r lmas
Ağaçların yazdırılması
  • Ağacın kökünden başlamak üzere elemanlarını yazdırma:
    • public static void print (Agacagac) {         if (agac == null) return; System.out.print (agac + " ");         print (agac.sol);         print (agac.sag);   }

+ 1 * 2 3

slide9

Önce dalların sonra kök elemanın yazdırılması:

    public static void printPostorder (Agacagac) {         if (agac == null) return; printPostorder (agac.sol); printPostorder (agac.sag); System.out.print (agac + " ");     }

1 2 3 * +

slide10

Önce sol, sonra kök sonra da sağ ağacın yazdırılması:

    public static void printInorder (Agacagac) {         if (agac == null) return; printInorder (agac.sol); System.out.print (agac + " "); printInorder (agac.sag);     } 1 + 2 * 3

vector class
Vector Class
  • Vector Sınıfı dinamik olarak boyut değiştirebilen Object dizisi işlevi görür.
  • Size vektörün tuttuğu eleman sayısını
  • Capacity vektörün işgal ettiği yeri gösterir
  • v.add(Object o): eleman ekleme
  • v.get(index): herhangi bir indexteki elemanı alma. Geriye Object döndürür
iterators
Iterators

Iterator iterator = v.iterator ();

while (iterator.hasNext ()) {

System.out.println (iterator.next ());

}

ListIterator iter = v.listIterator();

while (iter.hasNext()) {

System.out.println((String)iter.next());

}

ad