30/09/2018, 20:57
Hoán vị 2 phần tử trong linked list
chào mọi người, minh cài đặt thuật toán sắp xếp trong linked nhưng hàm của mình bị lỗi và mình sửa nhưng vẫn không được, đây là code của mình
void swap(int &a, int &b)
{
int tmp = a;
a = b;
b = tmp;
}
void interchangeSort(List &l)
{
Node *tmp = l.pHead;
Node *cur = l.pHead->pNext;
for (; tmp->pNext != NULL; tmp = tmp->pNext)
{
for (; cur != NULL; cur = cur->pNext)
{
if (tmp->Data > cur->Data)
{
swap(tmp->Data, cur->Data);
}
}
}
}
mong mọi người giúp đõ.
Bài liên quan
bạn sử dụng hàm swap này nha, mà bạn đưa hết code của bạn lên đây luôn đc ko ?
mình chỉ định hoán vị data thôi mà bạn, data của mình kiểu int mà bạn
đây là code toàn bài của mình
http://codepad.org/DGkHwHps
Sửa hàm Sort
Code ở đầu topic thì sửa thế này:
Code trong link này
thì sửa thế này
Ngoài lề chút… ý kiến cá nhân: mình nghĩ là không nên cho cả phần tử 0 vào. nên check a = 0 trước khi thêm node.
mình đã hiểu, cảm ơn bạn đã góp ý