美文网首页
5_6打印两个链表的公共值

5_6打印两个链表的公共值

作者: X_Y | 来源:发表于2017-09-14 09:39 被阅读9次

现有两个升序链表,且链表中均无重复元素。请设计一个高效的算法,打印两个链表的公共值部分。

给定两个链表的头指针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> result;
        while(headA && headB){
            if(headA->val == headB->val){
                result.push_back(headA->val);
                headA = headA->next;
                headB = headB->next;
            }else if(headA->val < headB->val){
                headA = headA->next;
            }else{
                headB = headB->next;
            }
        }
        return result;
    }
};

相关文章

  • 5_6打印两个链表的公共值

    现有两个升序链表,且链表中均无重复元素。请设计一个高效的算法,打印两个链表的公共值部分。 给定两个链表的头指针he...

  • 链表系列题目

    1.打印两个有序链表的公共部分 【题目】给定两个有序链表的头指针head1和head2,打印两个链表的公共部分。例...

  • 打印两个有序链表的公共部分

    给定两个有序链表的头指针head1和head2,打印两个链表公共部分1.如果head1的值小于head2,则hea...

  • 打印链表公共部分

    题目:打印两个有序链表的公共部分思路:利用外排的思想

  • 《剑指Offer》知识点整理

    链表 从尾到头打印链表 删除链表节点 链表中倒数 k 个节点 合并两个有序链表 两个链表的公共节点 树 二叉树遍历...

  • 关于链表的预备知识

    定义结点 创建链表结点 连接链表各结点 打印链表结点的值 打印整个链表中的值 删除整个链表 在链表尾部加入结点 特...

  • 2018-07-26

    合并有顺序的数组 打印两个有序链表的公共部分 在单链表和双链表中删除倒数第k个节点 单链表 双链表 删除链表的中间...

  • 打印两个有序链表的公共部分

    【题目】给定两个有序链表的头指针head1和head2,打印链表的公共部分。【解析】本题难度系数低,因为是有序链表...

  • 栈、队列、矩阵、链表问题(二)

    目录 “之”字形打印 在行列都排好序的矩阵中找数 打印两个有序链表的公共部分 判断一个链表是否为回文结构 将单向链...

  • 链表(上:链表反转)

    1. 逆序打印链表(单链表) 给定单链表,从尾到头打印每个节点的值,不同的值之间用空格隔开。比如:1>2>3>4>...

网友评论

      本文标题:5_6打印两个链表的公共值

      本文链接:https://www.haomeiwen.com/subject/mavrsxtx.html