上周面试挂了,反思原因,莫非是因为一道算法题没做好吗?这题目是“判断两条链表是否交叉,若有交叉,返回交叉节点的指针。”为了防止反复在同一个阴沟里翻船,决定把最优解写出来。#include"pch.h"#include<iostream>template<typenameT>classList{public:structNode{Tdata;Node*next;Node(T&
分类:
其他好文 时间:
2019-04-13 23:36:25
阅读次数:
149
题目:请写一个程序,找到两个单链表最开始的交叉节点。 注意事项 如果两个链表没有交叉,返回null。 在返回结果后,两个链表仍须保持原有的结构。 可假定整个链表结构中没有循环。 如果两个链表没有交叉,返回null。 在返回结果后,两个链表仍须保持原有的结构。 可假定整个链表结构中没有循环。 如果两个 ...
分类:
其他好文 时间:
2017-08-06 18:10:31
阅读次数:
110
题目描述:请写一个程序,找到两个单链表最开始的交叉节点。注意事项如果两个链表没有交叉,返回null;在返回结果后,两个链表仍须保持原有的结构;可假定整个链表结构中没有循环。
两个链表交叉,其实就是在某一时刻,两个链表指向了同一个节点。那么,如果两个链表等长,这道题就毫无难度了,我们直接分别遍历两个链表,看在哪个节点处,两个链表的指向的节点是一样的。
但是这道题并没有说链表等长,那也好办...
分类:
其他好文 时间:
2016-05-12 20:46:27
阅读次数:
189
题目两个链表的交叉请写一个程序,找到两个单链表最开始的交叉节点。样例下列两个链表:A: a1 → a2 ↘ c1 → c2 → c3 ↗ B: ...
分类:
其他好文 时间:
2015-11-20 23:02:53
阅读次数:
222
1. 问题描述 给定两个单链表,查找这两个单链表的交叉节点。例如:链表listA为:a1→a2→c1→c2→c3a_1 \to a_2 \to c_1 \to c_2 \to c_3,链表listB为:b1→b2→b3→c1→c2→c3b_1 \to b_2 \to b_3 \to c_1 \to c_2 \to c_3。那么这两个的第一个交叉节点为c1c_1。2. 方法与思路 首先,观察一下交...
分类:
其他好文 时间:
2015-08-04 11:25:08
阅读次数:
99