双向与单向链表操作及实现详解.pptx

双向链表(DoubleLinked-List)追加(append/push)–O(1)索引访问/修改(A[idx]=...)–O(n)插入(insert)–O(1)删除(delete/remove)–O(1)合并-O(1)

单向链表链表节点头指针-指向链表的第一个节点链表节点包括key和next指针key可以是数据或卫星数据的地址next指针指向下一个链表节点

节点内部单向链表节点线性排列地址离散

程序表示classLinkedList{constructor(){this.head=null}}functionListNode(key){this.key=keythis.next=null}表示一个链表节点表示单向链表

向空链表中插入元素1创建一个空链表,HEAD指针指向NULLconstlist=newLinkedList()

向空链表中插入元素1创建一个包含数据1的节点constnode=newListNode(1)

向空链表中插入元素1将HEAD指针指向节点list.head=nodeLinkedList{head:ListNode{key:1,next:null}}

再插入一个元素2再创建一个包含数据2的节点constnode2=newListNo

文档评论(0)

1亿VIP精品文档

相关文档