1. Reklam


    1. joysro
      ledas
      jungler
      keasro
      zeus
      karantina

Bagli Liste Ornegi (veri Yapilari)


  1. Narqotic

    Narqotic Bilgiliyim rank8

    Kayıt:
    22 Nisan 2007
    Mesajlar:
    1.365
    Beğenilen Mesajlar:
    0
    Ödül Puanları:
    0
    Meslek:
    !!!
    Şehir:
    BeN SeNiN CaNıN İçİN ÖmRüMü BiR KiBRiTiN KaBıNDa T
    EKRAN CIKTISI
    [​IMG]
    Php Code :
    Kod:
    #include <cstdlib>
    #include <iostream>
    
    using namespace std;
    
    class Dugum
    {
          private:
                 int bilgi;
                 
           public:
                  Dugum *sonraki;
                  Dugum();
                  Dugum(int a){bilgi=a;}
                  ~Dugum(){bilgi=0;}
                  int BilgiGetir(){
                      if(bilgi==0)
                        return 0;
                      else 
                        return bilgi;
                  }                       
    };
    
    class Liste
    {
          public:
                 Dugum *bas;
                 Dugum *son;
                 Dugum *temp;                  
                 Liste(){bas=0;son=0;}
                 Liste(int a)
                 {
                           Dugum *p=new Dugum(a);
                           bas=p;
                           son=p;
                 }
            
                 void basaEkle(int);
                 void sonaEkle(int);
                 void ekle(int);
                 void yazdir();
                 int varmi(int);
                 void sil(int);
    };
    
    void Liste::basaEkle(int a){
         Dugum *temp=new Dugum(a);
         temp->sonraki=bas;
         bas=temp;
    }
    void Liste::sonaEkle(int a){
         Dugum *temp=new Dugum(a);
         son->sonraki=temp;
         son=temp;
         son->sonraki=0;
    }
    void Liste::ekle(int a){
         if(bas==0){
                    bas=new Dugum(a);
                    son=bas;
                    }
         else if(a<bas->BilgiGetir())
              basaEkle(a);
         else if(a>son->BilgiGetir())
              sonaEkle(a);
         else{
              Dugum *temp;
              for(temp=bas;temp->sonraki->BilgiGetir()<a;temp=temp->sonraki);
                Dugum *yenidugum=new Dugum(a);
                yenidugum->sonraki=temp->sonraki;
                temp->sonraki=yenidugum;
              }
    }
    void Liste::yazdir(){
         Dugum *temp;
         for(temp=bas;temp!=0;temp=temp->sonraki)
           cout<<temp->BilgiGetir()<<" ";
    }
                  
    int Liste::varmi(int a){
         Dugum *temp=bas;
    
         for(temp=bas;temp->BilgiGetir()!=son->BilgiGetir();temp=temp->sonraki){
           if(temp->BilgiGetir()==a || son->BilgiGetir()==a)
           return 1;
         }
          
    }
    
    void Liste::sil(int a){
         if(varmi(a)==1){
                      if(bas->BilgiGetir()==a)
                      {
                           Dugum *temp=bas->sonraki;
                           delete bas;
                           bas=temp;
                      }
                      else if(son->BilgiGetir()==a)
                      {
                           Dugum *temp;
                             for(temp=bas;temp->sonraki!=son;temp=temp->sonraki);
                             delete son;
                             son=temp;
                             temp->sonraki=0;
                      }
                      else
                      {
                          Dugum *temp,*temp1;
                            for(temp=bas;temp->sonraki->BilgiGetir()!=a;temp=temp->sonraki);
                              temp1=temp->sonraki->sonraki;
                              delete temp->sonraki;
                              temp->sonraki=temp1;
                              
                      }
         }else
           cout<<a<<" Sayisi Silinmek Uzere Mevcut Degildir\n";
    }
    int main()
    {
        Liste Listem;
        
        Listem.ekle(8);Listem.ekle(7);
        Listem.ekle(5);Listem.ekle(6);
        Listem.ekle(9);Listem.ekle(23);
        Listem.ekle(1);Listem.ekle(46);
        Listem.ekle(60);
        Listem.yazdir();
        cout<<endl;
        Listem.sil(1);
        Listem.sil(60);
        Listem.sil(8);Listem.sil(69);
        Listem.yazdir();
        cout<<endl;
        
         Listem.varmi(87);  
        system("PAUSE");
        return EXIT_SUCCESS;
    }