Làm việc với Stack và Queue

Làm việc với ngăn xếp (Stack)

Ngăn xếp trong C# biểu diễn một tập hợp Last-in, First-out của các đối tượng và được thực thi bởi lớp Stack.

Nó được sử dụng khi bạn cần truy cập các item theo dạng Last-in, First-out. Khi bạn thêm một phần tử vào trong danh sách, nó được gọi là pushing và khi bạn gỡ bỏ một phần tử, nó được gọi là popping.

Chú ý: Stack - ngăn xếp; push - thêm nút mới vào đỉnh stack; pop - thao tác lấy 1 phần tử từ đỉnh stack

Phương thức và thuộc tính của lớp Stack trong C#

Bảng dưới liệt kê các thuộc tính được sử dụng phổ biến của lớp Stack trong C#:

THUỘC TÍNH MIÊU TẢ
Count Lấy số phần tử được chứa trong Stack

Bảng dưới liệt kê các phương thức được sử dụng phổ biến của lớp Stack trong C#:

STT PHƯƠNG THỨC
1 public virtual void Clear();

Gỡ bỏ tất cả phần tử từ Stack

2 public virtual bool Contains(object obj);

Gỡ bỏ tất cả phần tử từ Stack

3 public virtual object Peek();

Trả về một đối tượng tại trên cùng của Stack mà không gỡ bỏ nó

4 public virtual object Pop();

Gỡ bỏ và trả về đối tượng tại trên cùng của Stack

5 public virtual void Push(object obj);

Chèn một object tại trên cùng của Stack

6 public virtual object[] ToArray();

Sao chép Stack tới một mảng mới

Ví dụ về Stack

Ví dụ StackDemo sau đây sẽ minh hoạ chi tiết về cách sử dụng ngăn xếp:

Danh sách hàng đợi (Queue)

Danh sách hàng đợi trong C# biểu diễn một tập hợp First-in, First-out của các đối tượng và được thực thi bằng lớp Queue.

Nó được sử dụng khi bạn cần truy cập các item theo dạng First-in, First-out. Khi bạn thêm một item vào trong danh sách, nó được gọi là enqueue và khi bạn gỡ bỏ một item, nó được gọi là deque.

Phương thức và thuộc tính của lớp Queue

Bảng dưới đây sẽ liệt kê các thuộc tính được sử dụng phổ biến của lớp Queue trong C#:

THUỘC TÍNH MÔ TẢ
Count Lấy số phần tử được chứa trong Queue

Bảng dưới liệt kê các phương thức được sử dụng phổ biến của lớp Queue trong C#:

STT PHƯƠNG THỨC
1 public virtual void Clear();

Gỡ bỏ tất cả phần tử từ Queue

2 public virtual bool Contains(object obj);

Xác định có hay không một phần tử là trong Queue

3 public virtual object Dequeue();

Gỡ bỏ và trả về đối tượng tại phần bắt đầu của Queue

4 public virtual void Enqueue(object obj);

Thêm một phần tử vào phần cuối của Queue

5 public virtual object[] ToArray();

Sao chép Queue tới một mảng mới

6 public virtual void TrimToSize();

Thiết lập capacity tới số phần tử thực sự trong Queue

Ví dụ về Queue

Ví dụ QueueDemo sau đây sẽ minh hoạ chi tiết về cách sử dụng lớp hàng đợi:

Complete and Continue