Trees vectors iterators
This presentation is the property of its rightful owner.
Sponsored Links
1 / 13

Trees, Vectors, Iterators PowerPoint PPT Presentation


  • 69 Views
  • Uploaded on
  • Presentation posted in: General

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.

Download Presentation

Trees, Vectors, Iterators

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


Trees vectors iterators

Trees, Vectors, Iterators


Trees vectors iterators

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;

    }


Trees vectors iterators

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


Trees vectors iterators

  • 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


Trees vectors iterators

  • Ö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 * +


Trees vectors iterators

  • Ö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());

}


  • Login