Chào mọi người. Em mới học về queue, em có câu hỏi như tiêu đề và được miêu tả như ảnh dưới. Mọi người giải thích giúp em với. Em cảm ơn
Có thể sử dụng enqueue và dequeue cùng lúc không?
Chẳng có lệnh gì có thể thực hiện cùng 1 lúc cả. Chỉ là thời gian giữa 2 lệnh quá nhỏ (micro/nano-giây) nên không cảm nhận được.
Còn về Queue
như hình:
- Nếu
Dequeue
thực hiện trước thìEnqueue
suôn sẻ. - Nếu
Enqueue
thực hiện trước, không thực hiện được vìQueue
đã đầy. Sau đó đếnDequeue
, lúc này số phần tử chỉ còn3
.
Cách triển khai của Queue
cũng nên chú ý đến an toàn cho đa luồng (multithreading
).
4 Likes
Nhưng như vậy là có thể dịch chuyển giá trị trong queue lên vị trí khác đúng không ạ? Em xem mấy video visualize thì đều cho dequeue hết mới enqueue lại từ đầu
Tùy vào cách cài đặt queue của bạn nữa.
Chắc lười làm các trường hợp phức tạp.
4 Likes