数据结构04-链表面试题分析

(1)求单链表中节点的个数
循环遍历,每次加一,当节点的下一个节点为空时,循环结束
(2)查找单链表中的倒数第k个节点
先循环遍历出链表的总节点数(n),减去k即为正序查找的第(n-k)个节点
(3)单链表的反转
定义一个空的链表和头节点
循环单链表,将单链表的节点按顺序放入新建的链表中,每次在新建链表的头节点后面放入
(4)从尾到头打印单链表
先将链表反转,之后按顺序遍历
(5)合并两个有序的单链表,合并之后的链表依然有序,假设顺序为从小到大
先定义一个空的链表作为合并链表
定义两个while死循环,按第一个链表的顺序循环
同时嵌套的第二个while循环判断自己的节点是否小于第一个链表循环的节点
如果小于,则第二个链表的节点先放;如果大于,则第一个链表的节点先放,并跳出里面的循环
直到第一个链表的next为空时,链表合并完成

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值