Container list trong STL cung cấp hàm thành viên sort() để sắp xếp các phần tử ngay tại chỗ (in-place), không cần thuật toán riêng.
Hàm được sử dụng
- l.push_back() – Thêm phần tử vào cuối list.
- l.sort() – Sắp xếp tăng dần các phần tử trong list.
Ví dụ mã: Sắp xếp List
#include <iostream>
#include <list>
#include <string>
#include <cstdlib>
using namespace std;
int main() {
list<int> l;
list<int>::iterator it;
int c, i;
while (true) {
cout << "1. Thêm phần tử vào list\n";
cout << "2. Hiển thị list (đã sắp xếp)\n";
cout << "3. Thoát\n";
cout << "Nhập lựa chọn: ";
cin >> c;
switch (c) {
case 1:
cout << "Nhập giá trị: ";
cin >> i;
l.push_back(i);
break;
case 2:
l.sort();
cout << "Các phần tử list: ";
for (it = l.begin(); it != l.end(); ++it)
cout << *it << " ";
cout << endl;
break;
case 3:
return 0;
default:
cout << "Lựa chọn không hợp lệ\n";
}
}
return 0;
}
Kết quả mẫu
1. Thêm phần tử vào list 2. Hiển thị list (đã sắp xếp) 3. Thoát Nhập lựa chọn: 1 Nhập giá trị: 7 ... Nhập lựa chọn: 2 Các phần tử list: 4 6 7 10 Nhập lựa chọn: 3