数据结构之链表:打印两个链表的公共值
来源:互联网 发布:想看地方台网络电视 编辑:程序博客网 时间:2024/05/16 01:39
题目:
现有两个升序链表,且链表中均无重复元素。请设计一个高效的算法,打印两个链表的公共值部分。
给定两个链表的头指针headA和headB,请返回一个vector,元素为两个链表的公共部分。请保证返回数组的升序。两个链表的元素个数均小于等于500。保证一定有公共值
测试样例:
{1,2,3,4,5,6,7},{2,4,6,8,10}
返回:[2.4.6]
/*
struct ListNode {
int val;
struct ListNode *next;
ListNode(int x) : val(x), next(NULL) {}
};*/
class
Common {
public
:
vector<
int
> findCommonParts(ListNode* headA, ListNode* headB) {
// write code here
vector<
int
>out;
auto pt1=headA;
auto pt2=headB;
//循环:pt1和pt2谁小谁移动一个单位,相等则输出且一起移动一个单位 循环边界:一直移到其中一个为null
while
(pt1!=NULL&&pt2!=NULL){
if
(pt1->val<pt2->val){
pt1=pt1->next;
}
else
if
(pt1->val==pt2->val){
out.push_back(pt1->val);
pt1=pt1->next;
pt2=pt2->next;
}
else
{
pt2=pt2->next;
}
}
return
out;
}
};
0 0
- 数据结构之链表:打印两个链表的公共值
- 数据结构 打印两个有序链表的公共部分
- 打印两个链表的公共值
- 打印两个链表的公共值练习题
- 打印两个链表的公共值练习
- 链表12: 打印两个链表的公共值
- 打印两个有序链表的公共部分
- 打印两个有序链表的公共部分
- 打印两个有序链表的公共部分
- 打印两个有序链表的公共部分
- 打印两个有序链表的公共部分
- 打印两个有序链表的公共部分
- 打印两个有序链表的公共部分
- python--打印两个有序链表的公共部分
- 打印两个有序链表的公共部分 Python 版
- 链表之打印两个有序链表的公共部分
- 左程云_算法与数据结构 — 链表问题 — 01打印两个有序链表的公共部分
- 数据结构与算法分析笔记与总结(java实现)--链表12:打印两个升序链表公共值问题
- Effective Modern C++ 条款21 比起直接使用new,更偏爱使用std::make_unique和std::make_shared
- c++ 宏展开
- socket编程
- POJ 3104 Drying
- ViewPager的简单使用
- 数据结构之链表:打印两个链表的公共值
- struct与typedef struct
- 一年回顾
- BZOJ 1927: [Sdoi2010]星际竞速
- 栈与队列
- 递推+矩阵快速幂
- 流——概念
- POJ 3122 Pie
- 关于递推式的那些事(对于通式的求法[特征方程])