Veri Yapıları Bağlı Liste(Linked List) C++ Kodu
C++ ile oluşturulmuş bağıl liste(linked list) kodu.
#include<iostream>
using namespace std;
struct Eleman
{
int veri;
Eleman *ileri;
};
struct Liste
{
Eleman *bas;
Eleman *son;
Liste(){bas=NULL; son=NULL;}
void elemanEkle(Eleman *e)
{
if(bas==NULL)
bas=e;
else
son->ileri=e;
son=e;
}
int elemanS()
{
int s=0;
Eleman *p=bas;
while(p!=NULL)
{
s++;
p=p->ileri;
}
return s;
}
void arayaEkle(Eleman *yeni, int sira)
{
int kacTane=elemanS();
if(sira==0)
{
yeni->ileri=bas;
bas=yeni;
}
else if(sira==kacTane-1)
{
//elemanEkle(yeni);
son->ileri=yeni;
son=yeni;
}
else
{
Eleman *p=bas;
for(int i=0; i<sira; i++)
p=p->ileri;
yeni->ileri=p->ileri;
p->ileri=yeni;
}
}
void sil(int sira)
{
int kacTane=elemanS();
if(sira==0)
{
Eleman *gecici=bas;
bas=bas->ileri;
delete gecici;
}
else
{
Eleman *p=bas;
for(int i=0; i<sira-1; i++)
p=p->ileri;
Eleman *silinecek=p->ileri;
p->ileri=silinecek->ileri;
if(silinecek->ileri==NULL) son=p; // Sondaysa
delete silinecek;
}
}
int elemanVer(int sira)
{
Eleman *p=bas;
for(int i=0; i<sira; i++)
p=p->ileri;
return p->veri;
}
void tumElemanlar()
{
Eleman *p=bas;
while(p!=NULL)
{
cout<<p->veri<<" ";
p=p->ileri;
}
cout<<endl;
}
};
int main()
{
Liste li;
for(int i=0; i<5; i++)
{
//Eleman e;
//e.veri=i;
//li.elemanEkle(&e);
Eleman *e=new Eleman;
e->veri=i*2;
li.elemanEkle(e);
}
li.tumElemanlar();
Eleman *yeni=new Eleman; yeni->veri=9;
li.arayaEkle(yeni,2);
li.sil(1);
li.tumElemanlar();
}
2 Thoughts on Veri Yapıları Bağlı Liste(Linked List) C++ Kodu
kodunuz hata veriyor lütfen bakarmısınız ödevim için gereklide.
http://www.onlinegdb.com bu sitede derlediğimde çalışıyor. Sizde nasıl bir hata dönüyor?