Danh Sách Liên Kết Kép (hướng đối Tượng) - Programming

Danh sách liên kết là một trong những thành phần đơn giản nhất cấu thành nên cấu trúc dữ liệu. Do đó muốn nắm vững các cấu trúc dữ liệu ta cần phải nắm vững cấu trúc và cách xây dựng danh sách liên kết.

Ở bài này mình sẽ hướng dẫn các bạn cách xây dựng cấu trúc danh sách liên kết theo kiểu lập trình hướng đối tượng

Đầu tiên mình sẽ post full code. sau đó mình sẽ giải thích code – Định nghĩa đơn phân “chứa” nhỏ nhất (Một nút): Chứa dữ liệu và cấu trúc trỏ liền kề (trước hoặc sau nút hiện tại) https://c2.staticflickr.com/8/7319/13953186332_2e24fd3549.jpg Chú ý: Trong lập trình hướng đối tượng. Mỗi attribute (thuộc tính) ta nên có phương thức set và get cho chúng (set: đặt giá trị, còn get là trả về giá trị của đối tượng hiện thời) https://c2.staticflickr.com/8/7013/13976355673_c9fe11b627.jpg – Định nghĩa danh sách liên kết là một chuỗi các nút (node) liên kết với nhau theo cấu trúc được định nghĩa (ở đây next và prev là trước và sau ~~~~ có thể hiểu là cấu trúc tuần tự và trỏ ngược) https://c2.staticflickr.com/6/5072/13953186012_1d4ed423fa_n.jpg – Đối tượng bộ chứa bao giờ cũng cài đặt rất nhiều hàm. Ở bước này khi lập trình hướng đối tượng cần đặc tả thật cẩn thận và chi tiết. Sau khi đặc tả xong, chúng ta cài theo đặc tả đó https://c2.staticflickr.com/6/5113/13953186241_64a3a01530_n.jpg https://c2.staticflickr.com/8/7198/13933258896_dc73acaa45.jpg https://c2.staticflickr.com/6/5326/13953186031_4149631665_z.jpg https://c2.staticflickr.com/8/7273/13953185792_e9644f9a99.jpg – Kiểm nghiệm kết quả của cài đặt thông qua hàm main https://c2.staticflickr.com/8/7230/13976355003_ea7840c614.jpg

Khi chuyển từ C sang C++ ta vẫn thường có thói quen làm theo lập trình cấu trúc. Có nghĩa cũng là lập trình OOP nhưng thiên về cấu trúc của C

– Khi cài đặt class bình thường nên có các phương thức get…, set… cho các thành phần private: trong bài của mình VD: data —> getData (): Nhiệm vụ của hàm get là trả về dữ liệu hiện thời. Dữ liệu hiện có của đối tượng này là gì thì ta cho hiện ra Còn phương thức set….: Nhiệm vụ là: cập nhật dữ liệu cho đối tượng trong bài VD: setNext (Node next): nhiệm vụ của phương thức này cho biết đối tượng tiếp theo của đối tượng hiện thời là gì Trong bài này có lẽ nhiều bạn cho rằng mình giở hơi khi cho thêm phương thức https://c2.staticflickr.com/8/7459/13953392081_9fdfb390f2_z.jpg Nhưng mà cũng không giở hơi lắm nhỉ khi mà dslk là dslk đơn. Khi dùng dslk đơn thì phương thức get cực kì hiệu quả vì được sử dụng rất nhiều. Mình có một ví dụ lẩm cẩm ngay trong bài https://c2.staticflickr.com/8/7068/13957014394_e26ef34142_b.jpg Sorry vì mình không có nhiều time nên mình cho luôn phương thức get và addTail2 vào bài này để giới thiệu khi bạn làm dslk đơn. Khi ta xóa hay thêm một phần tử thì ta sử dụng phương thức get tìm một vị trí thích hợp để xóa, chèn như vậy sẽ tiết kiệm được khá nhiều giấy

Chia sẻ:

  • Twitter
  • Facebook
Thích Đang tải...

Có liên quan

Từ khóa » Danh Sách Liên Kết Hướng đối Tượng