Kayıt
22 Nisan 2007
Mesajlar
1.361
Beğeniler
0
Şehir
BeN SeNiN CaNıN İçİN ÖmRüMü BiR KiBRiTiN KaBıNDa T
EKRAN CIKTISI
- Resim Silinmiş.
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;
}
 
Son düzenleme yönetici tarafından yapıldı:
Yukarı Alt