所有题目均有五种语言实现。C实现目录、C++ 实现目录、Python实现目录、Java实现目录、JavaScript实现目录
题目
题目描述
求单向链表中间的节点值,如果奇数个节点取中间,偶数个取偏右边的那个值。
输入描述:
第一行 链表头节点地址path 后续输入的节点数n
后续输入每行表示一个节点,格式: "节点地址 节点值 下一个节点地址(-1表示空指针)“
输入保证链表不会出现环,并且可能存在一些节点不属于链表。
输出描述:
链表中间节点值。
测试用例:
输入:
00010 4
00000 3 -1
00010 5 12309
11451 6 00000
12309 7 11451
输出:
6
思路
1:第一步,根据输入,构建一个 输入节点的列表,用map来保存。
2:第二步,根据输入的头节点,先遍历一次,剔除无效节点并记录链表长度size。
3:第三步,找下标为size/2的