Thông báo: Download 4 khóa học Python từ cơ bản đến nâng cao tại đây.
Tìm hiểu về Deque trong Python
Deque (Double-Ended Queue – hàng đợi hai đầu) là một cấu trúc dữ liệu phổ biến trong Python, cung cấp khả năng thêm và loại bỏ phần tử từ cả hai phía một cách linh hoạt và hiệu quả. Trong Python, lớp deque từ mô-đun collections giúp đơn giản hóa các thao tác này với hiệu suất tối ưu, hỗ trợ các thao tác gần như O(1) thời gian cho cả việc thêm và loại bỏ. Bài viết này sẽ giới thiệu về deque, cùng cách sử dụng các hàm tích hợp trong Python để thực hiện các thao tác cơ bản trên cấu trúc này, từ đó giúp bạn tận dụng tối đa công cụ này trong việc tổ chức và quản lý dữ liệu.

Deque trong Python là gì?
Deque là viết tắt của double-ended queue (hàng đợi hai đầu), cho phép chúng ta thêm hoặc loại bỏ phần tử từ cả hai phía. Trong Python, mô-đun collections cung cấp lớp deque để triển khai deque.
Lớp deque là một kiểu chuỗi đa năng, linh hoạt và hiệu quả, hỗ trợ việc thêm và loại bỏ phần tử từ hai đầu với độ phức tạp thời gian gần O(1). Đây là lựa chọn lý tưởng khi bạn cần một cấu trúc dữ liệu hỗ trợ thao tác vào/ra ở cả hai đầu nhanh chóng và tiết kiệm bộ nhớ.
Dưới đây là một số thao tác cơ bản với deque:
Bài viết này được đăng tại [free tuts .net]
from collections import deque
# Tạo một deque
d = deque(['Black', 'White', 'Red', 'Green'])
# Thêm phần tử vào bên phải
d.append('Blue')
# Kết quả: deque(['Black', 'White', 'Red', 'Green', 'Blue'])
# Thêm phần tử vào bên trái
d.appendleft('Yellow')
# Kết quả: deque(['Yellow', 'Black', 'White', 'Red', 'Green', 'Blue'])
# Loại bỏ phần tử từ bên phải
d.pop()
# Trả về: 'Blue'
# Loại bỏ phần tử từ bên trái
d.popleft()
# Trả về: 'Yellow'
# Lấy kích thước của deque
len(d)
# Trả về: 5
Một số hàm khác của Deque
Bên cạnh các hàm append() và pop(), deque còn cung cấp nhiều hàm khác giúp thao tác nhanh chóng:
from collections import deque
# Tạo một deque
queue = deque(['Black', 'White', 'Red', 'Green'])
# Thêm nhiều phần tử vào bên phải deque
queue.extend(['Blue', 'Yellow'])
# Kết quả: deque(['Black', 'White', 'Red', 'Green', 'Blue', 'Yellow'])
# Thêm nhiều phần tử vào bên trái deque
queue.extendleft(['Orange', 'Purple'])
# Kết quả: deque(['Orange', 'Purple', 'Black', 'White', 'Red', 'Green', 'Blue', 'Yellow'])
# Đếm số lần xuất hiện của một phần tử
queue.count('Black')
# Trả về: 1
# Chèn một phần tử tại một vị trí nhất định
queue.insert(2, 'Brown')
# Kết quả: deque(['Orange', 'Purple', 'Brown', 'Black', 'White', 'Red', 'Green', 'Blue', 'Yellow'])
Kết bài
Trong bài viết này, bạn đã tìm hiểu các thao tác cơ bản với deque trong Python thông qua mô-đun collections, cũng như các hàm hỗ trợ sẵn trong lớp deque để thao tác với hàng đợi hai đầu. Deque là một công cụ hữu ích, giúp thao tác linh hoạt với chuỗi dữ liệu. Để tìm hiểu thêm chi tiết, bạn có thể tham khảo tài liệu chính thức của Python.

Các kiểu dữ liệu trong C ( int - float - double - char ...)
Thuật toán tìm ước chung lớn nhất trong C/C++
Cấu trúc lệnh switch case trong C++ (có bài tập thực hành)
ComboBox - ListBox trong lập trình C# winforms
Random trong Python: Tạo số random ngẫu nhiên
Lệnh cin và cout trong C++
Cách khai báo biến trong PHP, các loại biến thường gặp
Download và cài đặt Vertrigo Server
Thẻ li trong HTML
Thẻ article trong HTML5
Cấu trúc HTML5: Cách tạo template HTML5 đầu tiên
Cách dùng thẻ img trong HTML và các thuộc tính của img
Thẻ a trong HTML và các thuộc tính của thẻ a thường dùng