30/09/2018, 20:47

Danh Sách Liên Kết Đơn và Tập Tin

File text của mình:
8
5 8 12 38 3 7 10 40
Mình mới học về dánh sách liên kết nên chưa rành lắm.Code này mình muốn lưu và in ra danh sách.Nhưng mà mình làm chỉ in ra được số 5 hi vọng có thể giúp mình chỗ sai.

struct node
{
	int Data;
	node *pNext;
};

struct List
{
	node *pHead;
	node *pTail;
};
node* CreateNode(int *a, int n)
{
	node *p = new node; //Cap phat dong
	if (p == NULL)
	{
		return NULL;
	}
		p->Data = *a; //Truyen phan tu vao node
		p->pNext = NULL; //Chưa gắn vào DSLK
	return p; //*/
}
void InsertTail(List &list, int *a, int n)
{
	node *p = CreateNode(a, n); //*/
	if (p == NULL)
	{
		cout << "Khong tao duoc nut ";
		exit(1);
	}
	if (list.pHead == NULL)
		list.pHead = list.pTail = p; //Khi pHead rỗng thì node trở thành vị trí đầu
	else
	{
		list.pTail->pNext = p; //pHead ko rỗng thì cho phần tử node trỏ tới đầu
		list.pTail = p;	//vị trí đầu gán lại cho phần tử node.
	}
}
void ReadFile(List &list, int a[], int &n)
{
	ifstream fp("list.txt");
	fp >> n;
	for (int i = 0; i < n; i++)
	{
		fp >> a[i];	
		InsertTail(list, a, n);
	}
	
}
Tao Không Ngu. viết 22:53 ngày 30/09/2018

This post was flagged by the community and is temporarily hidden.

cescnghia viết 22:57 ngày 30/09/2018

bạn thử check lại cái chỗ insert coi có đúng ko ?

p -> next = list -> tail
list -> head = p

Bài liên quan
0