Đoạn code trong ví dụ sẽ tạo ra một danh sách liên kết như trong hình trên
(không tin thì bạn...thử xem là biết liền J). Địa chỉ bộ nhớ của các node thì
hoàn toàn ngẫu nhiên và không liên tục vì nó là dynamic memory
allocation mà.
Thế là đã Ok cho việc tạo một cấu trúc liên kết. Giờ ta bắt tay vào xây dựng
Linked Stack và Linked Queue. Tôi sẽ trình bày phần Linked Stack thôi,
phần Linked Queue thì các bạn hãy phát triển thêm nhé. Cũng hoàn toàn
tương tự thôi.
Ta khai báo Stack như sau:
enum Error_code {underflow, success, overflow};
typedef int Stack_entry;
class Stack {
public:
Stack();
Bool empty() const;
Stack_entry push(const Stack_entry &item);
Stack_entry top(Stack_entry &item) const;
Error_code pop();
protected: