Single Linked List examples
Berikut adalah contoh program Single Linked dengan satu simpul :
--------------------------------------------------------------------------------------
#include <iostream>
#include <string>
#include <cstdlib>
using namespace std;
struct simpulNegara
{
string nama;
simpulNegara* berikut;
};
simpulNegara* buatSimpul(string negara)
{
simpulNegara* pnegara;
pnegara = new (simpulNegara);
if (pnegara == NULL)
{
cout << "Pengalokasian " << negara
<< "gagal dilaksanakan." << endl;
exit(1); //akhir program
}
//Isi simpul
pnegara->nama = negara;
pnegara->berikut = NULL;
return pnegara;
}
int main()
{
simpulNegara* pertama;
pertama = buatSimpul("Swedia");
cout << "Field nama : " << pertama->nama << endl;
cout << "Isi berikut ";
if (pertama->berikut == NULL)
cout << "NULL" << endl;
else
cout << "TIDAK NULL" << endl;
//Bebaskan memori untuk variabel dinamis
delete pertama;
return 0;
}
-------------------------------------------------------------------------------------------------------------------
Berikut adalah contoh program Single Linked dengan tiga simpul :
-------------------------------------------------------------------------------------------------------------------
#include <iostream>
#include <string>
#include <cstdlib>
using namespace std;
struct simpulNegara
{
string nama;
simpulNegara* berikut;
};
simpulNegara* buatSimpul(string negara)
{
simpulNegara* pnegara;
pnegara = new (simpulNegara);
if (pnegara == NULL)
{
cout << "Pengalokasian " << negara
<< "gagal dilaksanakan." << endl;
exit(1); //akhir program
}
//Isi simpul
pnegara->nama = negara;
pnegara->berikut = NULL;
return pnegara;
}
int main()
{
simpulNegara* ptrBaru;
simpulNegara* pertama;
//Buat tiga variabel dinamis
pertama = buatSimpul("Swedia");
ptrBaru = buatSimpul("Jepang");
ptrBaru->berikut = pertama;
pertama = ptrBaru;
ptrBaru = buatSimpul("India");
ptrBaru->berikut = pertama;
pertama = ptrBaru;
//Tampilkan isi senarai berantai
simpulNegara* ptr = pertama;
while (ptr != NULL)
{
cout << ptr->nama << endl;
ptr = ptr->berikut;
}
//Bebaskan memori
while (pertama != NULL)
{
ptr = pertama;
pertama = pertama->berikut;
cout << "Akan membebaskan memori untuk "
<< ptr->nama << endl;
delete ptr;
}
return 0;
}
Silahkan dicoding ulang .. :)
--------------------------------------------------------------------------------------
#include <iostream>
#include <string>
#include <cstdlib>
using namespace std;
struct simpulNegara
{
string nama;
simpulNegara* berikut;
};
simpulNegara* buatSimpul(string negara)
{
simpulNegara* pnegara;
pnegara = new (simpulNegara);
if (pnegara == NULL)
{
cout << "Pengalokasian " << negara
<< "gagal dilaksanakan." << endl;
exit(1); //akhir program
}
//Isi simpul
pnegara->nama = negara;
pnegara->berikut = NULL;
return pnegara;
}
int main()
{
simpulNegara* pertama;
pertama = buatSimpul("Swedia");
cout << "Field nama : " << pertama->nama << endl;
cout << "Isi berikut ";
if (pertama->berikut == NULL)
cout << "NULL" << endl;
else
cout << "TIDAK NULL" << endl;
//Bebaskan memori untuk variabel dinamis
delete pertama;
return 0;
}
-------------------------------------------------------------------------------------------------------------------
Berikut adalah contoh program Single Linked dengan tiga simpul :
#include <string>
#include <cstdlib>
using namespace std;
struct simpulNegara
{
string nama;
simpulNegara* berikut;
};
simpulNegara* buatSimpul(string negara)
{
simpulNegara* pnegara;
pnegara = new (simpulNegara);
if (pnegara == NULL)
{
cout << "Pengalokasian " << negara
<< "gagal dilaksanakan." << endl;
exit(1); //akhir program
}
//Isi simpul
pnegara->nama = negara;
pnegara->berikut = NULL;
return pnegara;
}
int main()
{
simpulNegara* ptrBaru;
simpulNegara* pertama;
//Buat tiga variabel dinamis
pertama = buatSimpul("Swedia");
ptrBaru = buatSimpul("Jepang");
ptrBaru->berikut = pertama;
pertama = ptrBaru;
ptrBaru = buatSimpul("India");
ptrBaru->berikut = pertama;
pertama = ptrBaru;
//Tampilkan isi senarai berantai
simpulNegara* ptr = pertama;
while (ptr != NULL)
{
cout << ptr->nama << endl;
ptr = ptr->berikut;
}
//Bebaskan memori
while (pertama != NULL)
{
ptr = pertama;
pertama = pertama->berikut;
cout << "Akan membebaskan memori untuk "
<< ptr->nama << endl;
delete ptr;
}
return 0;
}
Silahkan dicoding ulang .. :)