30/09/2018, 18:40
Anh chị sửa lỗi giúp em lỗi nhập và xuất trong danh sách liên kết kép c++
mn giúp em với ạ, tks
#include"iostream"
using namespace std;
class node{
private:
node *pNext,*pPrev;
int data;
friend class list;
};
class list{
private:
node *pHead,*pTail;
public:
void Init(list &l);
node *getnode(int x);
void addTail(list &l,node *p);
void addHead(list &l,node *p);
void nhap(list &l);
void xuat(list l);
};
void list::Init(list &l)
{
l.pTail=l.pHead=NULL;
}
node* list::getnode(int x)
{
node *p;
p=new node;
if(p==NULL)
{
return NULL;
}
else
{
p->pNext=NULL;
p->data=x;
p->pPrev=NULL;
return p;
}
}
void list::addHead(list &l, node *p)
{
if(l.pHead==NULL)
l.pHead=l.pTail=p;
else
{
p->pNext=l.pHead;
l.pHead->pPrev=p;
l.pHead=p;
}
}
void list::nhap(list &l)
{
node *p;
int x,n;
cout<<"
nhap so phan tu cua day so: ";
cin>>n;
Init(l);
for(int i=1;i<=n;i++)
{
cout<<"
nhap phan tu thu "<<i<<" ";
cin>>x;
l.getnode(x);
l.addHead(l,p);
}
}
void list::xuat(list l) //xuat danh sach
{
for(node *k=l.pHead;k;k=k->pNext)
cout<<k->data<<" ";
}
int main()
{
list l;
l.nhap(l);
l.xuat(l);
}
Bài liên quan
Class node private=> public
ko đc anh ơi, em vừa thử rồi @Gio
bạn ko nên dùng fiend , hay~ dùng get , set , bài code này y hệt như lúc mình mới chuyển từ struct sang class vây
nghĩa là sao hả anh 0.o , a có thể ns rõ zùm em k ạ , cái chỗ dùng get set ý ạ . tks, @Thang_Hoang_Ngoc