数据结构题目21:连接成一个线性链表将两个非空线性链表
2020-05-01 本文已影响0人
玲儿珑
题目:将两个非空线性链表连接成一个线性链表
解题思路:设两个链表的第1个链结点的指针分别为lista和listb。先找到第1个链表末尾链结点的位置,然后将第2个链表的第1个链结点的地址送其指针域即可。
具体算法实现如下:
这里我们会用到toString(list))来打印一个线性链表出来。
这里我们会用到createLinklist(n)来建立一个线性链表出来
function connect(lista ,listb) {
let p = lista;
while (p.link!=null) {
p=p.link
}
p.link = listb
return lista
}
var lista = createLinklist(4)
console.log('创建的list为:', toString(lista))
var listb = createLinklist(4)
console.log('创建的list为:', toString(listb))
var r_list = connect(lista, listb)
console.log('连接后的链表为:', toString(r_list))
性能:
时间复杂度为O(n)