Danh sách liên kết đơn js Mới nhất

Danh sách liên kết đơn js Mới nhất

Thủ Thuật về Danh sách link đơn js 2022


Bạn đang tìm kiếm từ khóa Danh sách link đơn js được Update vào lúc : 2022-01-03 11:02:05 . Với phương châm chia sẻ Bí kíp về trong nội dung bài viết một cách Chi Tiết 2022. Nếu sau khi tìm hiểu thêm tài liệu vẫn ko hiểu thì hoàn toàn có thể lại Comments ở cuối bài để Ad lý giải và hướng dẫn lại nha.


Danh sách được link là một trong những cấu trúc tài liệu quan trọng nhất mà bạn hoàn toàn có thể học.


Trong list được link, mỗi mục chứa một tham chiếu đến mục theo sau nó.


Chúng ta hoàn toàn có thể bắt nguồn từ trên đầu list,headvà lặp lại qua toàn bộ những mục của list, cho tới lúc toàn bộ chúng ta đi đến phần cuối (tail).


So với một mảng, những mục không nằm cạnh nhau trong bộ nhớ thực (trong ngôn từ lập trình thấp cấp) hoặc không còn chỉ mục mà toàn bộ chúng ta hoàn toàn có thể sử dụng để truy vấn ngẫu nhiên một mục của mảng.


Chúng tôi không thể tham chiếu một mục ở giữa list mà không bắt nguồn từ trên đầu, vì chúng tôi không biết phương pháp tham chiếu nó.


JavaScript không còn triển khai list được link, vì vậy chúng tôi sẽ tạo một list ngay giờ đây.


Đầu tiên, chúng tôi tạoItemlớp sẽ tiến hành chứa cho từng mục trong list:


class Item

next = null

value = null

constructor(value)

this.value = value


Chúng tôi có một con trỏ đến mục tiếp theo trong list và giá trị.


Sau đó, chúng tôi xác lập mộtLinkedListlớp sẽ tàng trữ 2 giá trị riêng tư:headvàtail.


Chúng tôi xác lập mộtappend()phương pháp để thêm một mục vào list. Nếu đó là mục thứ nhất chúng tôi thêm vào, thì mục đó vừa là phần đầu vừa là phần cuối của list. Nếu không, chúng tôi tạo mục và chúng tôi gán nó chonextthuộc tính của mục đuôi:


class LinkedList

#head = null

#tail = null

append = (value) =>

const item = new Item(value)

if (!this.#head)

this.#head = item

this.#tail = item

return


this.#tail.next = item

this.#tail = item


size = () =>

let count = 1

let item = this.#head

if (!item) return 0

while ((item = item.next))

count++


return count


Đây là cách toàn bộ chúng ta hoàn toàn có thể sử dụng nó:


const list = new LinkedList()

list.append(1)

list.append(2)

list.append(3)


Chúng ta hoàn toàn có thể thêm mộtsize()phương thức để trả về kích thước của list:


class LinkedList

//…

size = () =>

let count = 1

let item = this.#head

if (!item) return 0

while ((item = item.next))

count++


return count


const list = new LinkedList()

list.size() //0

list.append(1)

list.size() //1

list.append(2)

list.append(3)

list.size() //3


Làm thế nào toàn bộ chúng ta hoàn toàn có thể tìm thấy một mục trong list, theo giá trị? Hãy triển khai một phương pháp để làm như vậy:


class LinkedList

//…

find = (value) =>

let count = 1

let item = this.#head

if (!item) return null

while ((item = item.next))

if (item.value === value)

return item


return null


const list = new LinkedList()

list.append(1)

list.append(2)

list.append(3)

const item = list.find(2) //item.value === 2


Điều gì sẽ xẩy ra nếu toàn bộ chúng ta muốn chèn một mục vào list link? Chúng tôi đã cóappend()để chèn mục vào thời điểm cuối list. Hãy triển khai một phương pháp để chèn mục tại một vị trí rõ ràng:


class LinkedList

//…

insert = (index, value) => index > this.size()) return

const node = new Item(value)

let current = this.#head

let previous


if (index === 0)

//first position

node.next = current

this.#head = node

else

let i = 0

while (i++ < index)

previous = current

current = current.next


node.next = current

previous.next = node


const list = new LinkedList()

list.append(1)

list.append(2)

list.append(3)

list.insert(2, a)

list.size() //4


Một loại list link khác là list link kép, trong số đó mỗi mục cũng chứa một link đến thành phần trước đó.



Các hướng dẫn js khác:



Reply

7

0

Chia sẻ


Share Link Cập nhật Danh sách link đơn js miễn phí


Bạn vừa Read Post Với Một số hướng dẫn một cách rõ ràng hơn về Clip Danh sách link đơn js tiên tiến và phát triển nhất ShareLink Tải Danh sách link đơn js miễn phí.



Thảo Luận vướng mắc về Danh sách link đơn js


Nếu sau khi đọc nội dung bài viết Danh sách link đơn js vẫn chưa hiểu thì hoàn toàn có thể lại phản hồi ở cuối bài để Mình lý giải và hướng dẫn lại nha

#Danh #sách #liên #kết #đơn

Related posts:

Post a Comment

Previous Post Next Post

Discuss

×Close