Java: LinkedList

Một collection có thứ tự được gọi là một danh sách. Nó còn được gọi là một chuỗi (sequence) . Sau đây là các đặc điểm của danh sách:

Lưu ý – Đối với một số triển khai nhất định, các hoạt động như vậy có thể thực thi theo thời gian tỷ lệ với giá trị chỉ mục.

Interface List bao gồm các khai báo bổ sung bằng cách sử dụng các phương thức iterator, remove, add, hashCode và equals. Phương thức equals() giúp kiểm tra sự bằng nhau logic của hai đối tượng List. Hai đối tượng List là bằng nhau nếu chúng chứa các phần tử giống nhau theo cùng một thứ tự. Nó cũng có thể bao gồm các khai báo cho các phương thức kế thừa khác.

List cung cấp ListIterator, là một trình lặp đặc biệt. Điều này được sử dụng để chèn và thay thế một phần tử. Điều này cũng được sử dụng để truy cập hai chiều cùng với các hoạt động bình thường. Một phương thức được sử dụng để lấy một trình lặp danh sách, bắt đầu từ một vị trí cụ thể trong danh sách.

Có hai phương thức trong List để tìm kiếm một đối tượng được chỉ định. Tuy nhiên, các phương thức này có thể thực hiện các tìm kiếm tuyến tính tốn kém.

List cũng bao gồm hai phương thức để chèn và loại bỏ nhiều phần tử tùy ý điểm trong danh sách.

Lớp LinkedList thực thi interface List. Một mảng lưu trữ các đối tượng trong các vị trí bộ nhớ liên tiếp, trong khi danh sách được liên kết lưu trữ đối tượng dưới dạng một liên kết riêng biệt. Nó cung cấp cấu trúc dữ liệu danh sách liên kết. Danh sách liên kết là danh sách các đối tượng có liên kết đến đối tượng tiếp theo. Thường có một phần tử dữ liệu được theo sau bởi một phần tử địa chỉ chứa địa chỉ của phần tử tiếp theo trong danh sách theo một trình tự. Mỗi mục như vậy được gọi là một nút.

Danh sách liên kết cho phép chèn và loại bỏ các nút ở bất kỳ vị trí nào trong danh sách, nhưng không cho phép truy cập ngẫu nhiên. Có một số loại danh sách liên kết khác nhau – danh sách liên kết đơn, danh sách liên kết đôi và danh sách liên kết vòng.

Java cung cấp lớp LinkedList trong gói java.util để triển khai danh sách được liên kết.

  • LinkedList (): Hàm tạo LinkedList () tạo một danh sách được liên kết trống.
  • LinkedList (Collection <? expand E> c): Phương thức khởi tạo LinkedList (Collection <? Expand E> c) tạo một danh sách được liên kết, chứa các phần tử của một tập hợp được chỉ định, theo thứ tự chúng được trả về bởi trình lặp của tập hợp.

Hình 1: hiển thị một danh sách liên kết.