Showing posts sorted by relevance for query C++. Sort by date Show all posts
Showing posts sorted by relevance for query C++. Sort by date Show all posts

Friday, May 13, 2016

Chương trình cài đặt hằng đợi theo danh sách liên kết đơn bằng C++

//Họ Tên: Trần Văn Linh
//MaSV:581597
//Lớp:K58QLTT

--------------------------------------------------------------------------------------------------------------------------
hangdoi.cpp
#include<iostream>

using namespace std;

//Khai bao lop
class hangdoi
{
private:
struct node
{
int info;
node *link;
}*F,*R;
public:
hangdoi();
~hangdoi();
void cqinsert(int &x);
int cqdelete();
};
//===Chuong trinh chinh===
int main()
{
hangdoi ds;
int i,n;
int a[50];

cout<<"Nhap so luong so nguyen:";
cin>>n;
for(i=0;i<n;i++)
{
cout<<"Nhap phan tu thu "<<i<<" :"<<endl;
cin>>a[i];
ds.cqinsert(a[i]);
}

cout<<"Danh sach so da nhap la:"<<endl;
for(i=0;i<n;i++)
cout<<ds.cqdelete()<<" ";

return 0;
}
//Dinh nghia ham
hangdoi::hangdoi():F(NULL),R(NULL)
{

}
//--------------
hangdoi::~hangdoi()
{
node *P;
while(F)
{
P=F;
F=F->link;
delete P;
}
}
//--------------
void hangdoi::cqinsert(int &x)
{
node *N;
N= new node;
N->info=x;
N->link=NULL;

if(F==NULL)
{
F=N;
R=N;
}
else
{
R->link=N;
R=N;
}
}
//--------------
int hangdoi::cqdelete()
{
node *P;
int y;

P=F;
if(F==NULL)
{
cout<<"hang doi rong.!";
return 0;
}

y=F->info;
F=F->link;
delete P;
return y;
}
//--------------

Chương trình cài đặt ngăn xếp bằng danh sách liên kết đơn cho phép chèn , xóa một số phần tử bằng C++

//Họ Tên: Trần Văn Linh
//MaSV:581597
//Lớp:K58QLTT

DSLK.cpp
#include<iostream>

using namespace std;

//Khai bao lop
class dslkd
{
private:
struct node{
int info;
node *next;
}*F;
public:
dslkd();
~dslkd();
void chencuoi(int x);
void xoanode(int x);
void hien();

};

//==Chuong trinh chinh====
int main()
{

dslkd ds;
int x;
char kt;
do
{
cout<<"Nhap phan tu muon them vao danh sach:";
cin>>x;
ds.chencuoi(x);
cout<<"\nCo muon nhap them nua khong (C-K):";
cin>>kt;
}
while(kt=='c'||kt=='C');
cout<<"\nDanh sach da nhap la:";
ds.hien();
cout<<"\nNhap phan tu muon xoa:";
cin>>x;
ds.xoanode(x);
cout<<"Danh sach sau khi xoa la:";
ds.hien();
cout<<endl;
return 0;
return 0;
}
//Dinh nghia ham
dslkd::dslkd():F(NULL)
{

}
//------------
dslkd::~dslkd()
{
node *P;
while(F)
{
P=F;
F=F->next;
delete P;
}
}
//------------
void dslkd::chencuoi(int x)
{
node* N,*P;
N=new node;
N->info=x;
N->next=NULL;

P=F;
if(F==NULL)
F=N;
else
{
while(P->next)
P=P->next;
P->next=N;
}
}
//------------
void dslkd::xoanode(int x)
{
node *P;
node *Q;
P=F;
while(P)
{
if(P->info==x)
break;
Q=P;
P=P->next;
}
if(P)
{
if(P==F)
F=F->next;
else
{
Q->next=P->next;
}
delete P;
}

}
//------------
void dslkd::hien()
{
node*P;
P=F;
while(P)
{
cout<<P->info;
P=P->next;
}
}
//------------