Trong bài viết này, chúng ta sẽ thảo luận về cách hoạt động, cú pháp và ví dụ của các hàm list::empty() và list::size() trong C++ STL.
List trong STL là gì?
List là container cho phép chèn và xóa ở bất kỳ vị trí nào trong chuỗi với thời gian không đổi. List được triển khai dưới dạng danh sách liên kết đôi. List cho phép cấp phát bộ nhớ không liên tục. List hoạt động tốt hơn array, vector và deque khi chèn, trích xuất và di chuyển phần tử. Truy cập trực tiếp vào phần tử chậm hơn và list tương tự forward_list, nhưng forward_list là danh sách liên kết đơn chỉ lặp tiến.
list::empty() là gì?
list::empty() là hàm built-in trong C++ STL được khai báo trong header <list>. Hàm kiểm tra list container có rỗng (kích thước 0) hay không.
Cú pháp
List.name.empty()
Giá trị trả về
Trả về true nếu list rỗng, false nếu không rỗng.
Ví dụ
Input List: 50 60 80 90 Output False Input List: (rỗng) Output True
Cách tiếp cận
Khai báo List.
In List.
Gọi empty().
Theo cách này có thể kiểm tra list rỗng. Có thể thêm phần tử để test list không rỗng.
Ví dụ hoàn chỉnh
// C++ code to demonstrate the working of list empty() function in STL
#include <iostream>
#include <list>
using namespace std;
int main() {
list<int> list = { 55, 84, 38, 66, 67 };
// in list
cout << " List: ";
for (auto x = list.begin(); x != list.end(); ++x)
cout << *x << " ";
// gọi empty()
if (list.empty()) {
cout << " True";
} else {
cout << " false";
}
return 0;
}
Kết quả
Input - List: 55 84 38 66 67 Output - false Input – List: (rỗng) Output – True
list::size() là gì?
list::size() là hàm built-in trong C++ STL được khai báo trong header <list>. Hàm dùng để tìm kích thước của list, thường là số phần tử trong list.
Cú pháp
listname.size()
Trả về số phần tử trong list.
Ví dụ
Input – List: 5 6 7 8 9 10 Output – 6 Input – W O N D E R S Output – 7
Cách tiếp cận
Khai báo list.
In list.
In kích thước list dùng size().
Theo cách này có thể tìm kích thước list.
Ví dụ hoàn chỉnh
// C++ code to demonstrate the working of list size() function in STL
#include <iostream>
#include <list>
using namespace std;
int main() {
list<char> list = { 'M', 'A', 'R', 'C', 'H' };
cout << " List: ";
for (auto x = list.begin(); x != list.end(); ++x)
cout << *x << " ";
// dùng size() in số phần tử
cout << " Size of List" << list.size();
return 0;
}
Kết quả
Input – List: M A R C H Output – Size of List: 5