Tôi nghĩ rằng, bạn không được chấp nhận không hiểu những điều này, bởi vì chúng thực sự cơ bản. Điều đó đang được nói, việc bạn không hiểu họ là không có gì để cảm thấy tồi tệ. Bạn có thể giải thích một danh sách liên kết với một đứa trẻ. Vì vậy, nếu giáo viên của bạn không giải thích chúng cho bạn, đó là lỗi của họ. Vì vậy, bạn không nên dành thời gian để lo lắng mà nên cố gắng tìm người, người có thể giải thích cho bạn. Thông thường một học sinh là một giáo viên tốt hơn nhiều so với một học tập toàn thời gian.
Hãy nghĩ về xe lửa
Hãy tưởng tượng, bạn có một bộ toa xe lửa, trong đó mỗi toa có đủ sức chứa, để chứa một phần dữ liệu. Mỗi cỗ xe có một số móc ở cuối của nó, có thể được gắn vào phía trước của cỗ xe khác.
Điều này trong thực tế cung cấp cho bạn một danh sách liên kết:
- danh sách trống: tàu không chứa toa tàu (và do đó không mang dữ liệu)
- thêm một yếu tố: thêm một cỗ xe mới chứa yếu tố phía trước tàu và móc nó vào phần còn lại của tàu
- loại bỏ một phần tử: tìm cỗ xe chứa phần tử. Hủy bỏ nó (bạn có thể cần một cần cẩu ở đây :)), móc cỗ xe trước với cỗ xe sau.
- thay thế một yếu tố: tìm cỗ xe chứa yếu tố cũ. Trao đổi phần tử cũ với phần tử mới.
- chèn một phần tử ngay sau phần tử khác: tìm cỗ xe chứa phần tử mà sau đó bạn muốn chèn. Chèn một cỗ xe mới sau nó, được nối tương ứng (chúng tôi không muốn tàu bị vỡ) và đặt phần tử mới vào đó.
Ngược lại, bạn có thể nghĩ về một mảng như một đoàn tàu với một số toa xe nhất định, không thể được sắp xếp lại theo bất kỳ cách nào. Tất cả những gì bạn có thể làm là thay đổi dữ liệu trong đó. Mô hình này cũng giải thích rất nhiều vấn đề mảng có:
- Nếu bạn muốn chèn một yếu tố trước một yếu tố khác, bạn sẽ phải di chuyển tất cả các yếu tố sau sang vận chuyển tiếp theo.
- Nếu bạn muốn loại bỏ một yếu tố, bạn sẽ cần di chuyển tất cả các yếu tố sau một xe ngựa ra phía trước.
- Nếu bạn cần một chuyến tàu có nhiều toa tàu, bạn sẽ phải xây dựng một chiếc mới, bởi vì bạn không thể chỉ cần đặt trước một cỗ xe. Mặt khác, việc tìm các toa xe trong một mảng dễ dàng hơn nhiều, bởi vì bạn có thể chỉ cần đánh số chúng vĩnh viễn (thứ tự của chúng sẽ không bao giờ thay đổi).
Đối với ngăn xếp: "Ngăn xếp" có cấu trúc dữ liệu ít hơn so với ý tưởng. Ý tưởng của ngăn xếp là, nó hoạt động giống như một chồng sách. Bạn chỉ có thể đặt sách lên trên chồng và bạn chỉ có thể lấy sách trên cùng ra khỏi chồng (ít nhất là nếu sách đủ nặng).
Điều đó đang được nói, một danh sách được liên kết có thể được sử dụng như một chồng, nếu bạn nghĩ dữ liệu trong xe ngựa là sách và cuốn sách trong cỗ xe đầu tiên là đầu của ngăn xếp.
Vì vậy, tôi hy vọng điều này đã giúp bạn. Có lẽ nó đã không. Có lẽ bạn là một loại hình ảnh. Trong trường hợp đó, tôi khuyên bạn nên tìm ai đó, người giỏi đưa ra những lời giải thích trực quan và giải thích cho bạn. Sẽ không mất nhiều thời gian, nhưng nó sẽ hoàn toàn xứng đáng.
Bây giờ ổn để đấu tranh với điều này. Nhưng chỉ đơn thuần là chấp nhận nó, không phải là một lựa chọn trong thời gian dài.