Duyệt deque trong C++ | Laptrinhcanban.com

HOME › >>

Duyệt deque trong C++

Hướng dẫn cách duyệt deque trong C++. Bạn sẽ học được 3 cách căn bản để duyệt deque trong C++ sau bài học này.

Chúng ta có 3 phương pháp duyệt deque trong C++ như sau:

  • Sử dụng vòng lặp và index trong C++
  • Sử dụng vòng lặp dựa trên phạm vi
  • Sử dụng iterator

Duyệt deque trong C++ bằng vòng lặp và index

Trong bài deque trong C++ chúng ta đã biết cách truy xuất tới từng phần tử trong deque C++ thông qua index của phần tử đó.

Bằng cách sử dụng vòng lặp for và hàm size() để lấy số phần tử trong deque và chỉ định số vòng lặp, chúng ta có thể truy xuất lần lượt tới các phần tử trong deque và thực hiện việc duyệt deque trong C++, giống như ví dụ sau đây:

#include <iostream>
#include <deque>
using namespace std;

int main()
{
deque<int> dq{5, 6, 88, -2};
for (short i=0; i< dq.size();i++){
cout << dq[i] <<endl;
}
return 0;
}

Kết quả:

5
6
88
-2

Duyệt deque trong C++ bằng vòng lặp dựa trên phạm vi

Có rất nhiều thứ tiện lợi đã được thêm vào trong C++, và một trong số đó chính là vòng lặp dựa trên phạm vi.

Bằng cách sử dụng vòng lặp dựa trên phạm vi, chúng ta có thể duyệt deque trong C++ với cú pháp như sau:

for ( auto& x : dq) {
    // Xử lý
}

Trong đó:

  • dq là tên deque
  • x là tên một biến dùng để gán từng phần tử được lấy từ deque
  • auto là kiểu suy luận giúp tự xác định kiểu dữ liệu của giá trị lấy từ deque

Ví dụ cụ thể:

#include <iostream>
#include <deque>
using namespace std;

int main()
{
deque<int> dq{5, 6, 88, -2};

for (auto x: dq) {
cout << x << endl;
}
}

Kết quả:

5
6
88
-2

Nếu trong deque chỉ chứa các phần tử thuộc kiểu dữ liệu nguyên thủy, chúng ta cũng có thể thay thế auto bằng tên kiểu, ví dụ deque ở trên chỉ chứa các phần tử thuộc kiểu int nên chúng ta có thể viết:

deque<int> dq{5, 6, 88, -2};

for (int x: dq) {
cout << x << endl;
}

Một cách tương tự chúng ta cũng có thể dùng vòng lặp dựa trên phạm vi để duyệt deque 2 chiều trong C++ như sau:

#include <iostream>
#include <deque>
using namespace std;

int main()
{
deque<deque<int> > dq{{5, 2}, {6,3}, {88, -2}};

for (auto x: dq) {
for (auto y: x) {
cout << y << endl;
}
}
}

Kết quả:

5
2
6
3
88
-2

Duyệt deque trong C++ bằng iterator

Trong C++, các kiểu dữ liệu như deque, deque, map đều được thêm một chức năng là iterator nhằm giúp biến chúng thành các trình lặp để dễ dàng xử lý.

Bằng cách sử dụng iterator, chúng ta có thể duyệt deque trong C++ với cú pháp như sau:

for(auto itr = dq.begin(); itr != dq.end(); ++itr) {
    cout << *itr << endl;
}

Trong đó:

  • dq là tên deque
  • itr là tên iterator

Ví dụ cụ thể:

#include <iostream>
#include <deque>
using namespace std;

int main()
{
deque<int> dq{5, 6, 88, -2};

for(auto itr = dq.begin(); itr != dq.end(); ++itr) {
cout << *itr << endl;
}
}

Và kết quả thu về cũng tương tự với phương pháp duyệt deque bằng vòng lặp dựa trên phạm vi ở trên:

5
6
88
-2

Tổng kết

Trên đây Kiyoshi đã hướng dẫn bạn về cách duyệt deque trong C++ rồi. Để nắm rõ nội dung bài học hơn, bạn hãy thực hành viết lại các ví dụ của ngày hôm nay nhé.

Và hãy cùng tìm hiểu những kiến thức sâu hơn về C++ trong các bài học tiếp theo.

URL Link

https://laptrinhcanban.com/cpp/lap-trinh-cpp-co-ban/deque-trong-cpp/duyet-deque-trong-cpp/

Hãy chia sẻ và cùng lan tỏa kiến thức lập trình Nhật Bản tại Việt Nam!

HOME  › >>

Profile
きよしです!笑

Tác giả : Kiyoshi (Chis Thanh)

Kiyoshi là một cựu du học sinh tại Nhật Bản. Sau khi tốt nghiệp đại học Toyama năm 2017, Kiyoshi hiện đang làm BrSE tại Tokyo, Nhật Bản.