首页 > 其他分享 >找出两个单链表的公共结点

找出两个单链表的公共结点

时间:2023-05-31 11:15:18浏览次数:26  
标签:结点 单链 LinkedList 找出 next L2 common

给定两个单链表,找出两个单链表的公共结点

LinkedList Search_Common_LNode(LinkedList& L1, LinkedList& L2)
{
	LNode* p = L1->next;
	LNode* q = L2->next;

	LinkedList& common_L;

	while(p) {
		while(q) {
			if(q->data == p->data) {
				insert(common_L, q);	//将公共结点插入到common_L链表中
				q = L2->next;	//重置q指针的位置
				p = p->next;	//p指针向后移动
			} else {
				q = q->next;
			}
		}
		//重置q指针,q指针向后移动
		p = p->next;
		q = L2->next;
	}
	return common_L;
}

标签:结点,单链,LinkedList,找出,next,L2,common
From: https://www.cnblogs.com/xiaomitu/p/17445483.html

相关文章

  • 删除单链表中所有介于给定的两个值之间的元素的元素
    设在一个带头结点的单链表中所有元素结点的数值域无序,编写一个函数,删除表中所有介于给定的两个值(作为函数参数给出)之间的元素的元素(若存在)分析:因为链表是无序的,所以只能逐个结点进行检查,执行删除代码如下:voidDelete_Range(LinkedList&L,intmin,intmax){ LNode*p=L->......
  • 单链表(c++实现)
    template<typenameT>classListNode{public:explicitListNode(Tvalue_,ListNode*next_=nullptr):value(value_),next(next_){}TgetValue()const{returnvalue;}ListNode<T>*getNext()const{returnnext;};voidsetNext(ListNo......
  • 单链表
    1、特点:任意存储,顺序存取2、结构体定义和预定义#include<stdio.h>#include<stdlib.h>//malloc函数#defineElemTypeint#defineStatusint#defineERROR0#defineOK1typedefstructLnode{ElemTypedata;structLnode*next;}Lnode,*Linklist;3、初始......
  • 关于在 computed 使用 ref 获取 dom 结点为 undefined的问题
    原因:因为ref本身是作为渲染结果被创建的,在初始渲染的时候你不能访问它们,它们还不存在computed里面无法获取到ref解决方法:方法一:data:{isMount:false,},mounted(){this.isMount=true},computed:{if(this.isMount){console.l......
  • 找出第k小的数对距离
    数对(a,b)由整数a和b组成,其数对距离定义为a和b的绝对差值。给你一个整数数组nums和一个整数k,数对由nums[i]和nums[j]组成且满足0<=i<j<nums.length,返回所有数对距离中第k小的数对距离。1.小根堆二维搜索(超时)classSolution{public:int......
  • 28.找出字符串中第一个匹配项的下标——学习笔记
    题目:给你两个字符串 haystack和needle,请你在haystack字符串中找出needle字符串的第一个匹配项的下标(下标从0开始)。如果 needle不是haystack的一部分,则返回 -1。示例1:输入:haystack="sadbutsad",needle="sad"输出:0解释:"sad"在下标0和6处匹配。第一个......
  • 图解LeetCode——19. 删除链表的倒数第 N 个结点
    一、题目给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。二、示例2.1>示例1:【输入】head=[1,2,3,4,5],n=2【输出】[1,2,3,5]2.2>示例2:【输入】head=[1],n=1【输出】[]2.3>示例3:【输入】head=[1,2],n=1【输出】[1]提示:链......
  • OD统一考试(B卷)寻找链表的中间结点
    华为OD机试【4大宝典】再次上新题!①Python解华为机试题:https://dream.blog.csdn.net/article/details/129221789②C++解华为机试题:https://dream.blog.csdn.net/article/details/129472919③Java解华为机试题:https://dream.blog.csdn.net/article/details/129652513④......
  • 代码随想录算法训练营第九天|28. 找出字符串中第一个匹配项的下标、459. 重复的子字符
    【参考链接】28.找出字符串中第一个匹配项的下标【注意】1.kmp解决的就是字符串匹配的问题。2.kmp如何知道匹配过哪些字符串,并跳到匹配过的内容后面的字符。---前缀表3.找到一个子字符串里它的最长相等前后缀。4.前缀是包含首字母,不包含尾字母的所有子串;后缀只包含尾字母,不......
  • LC19. 删除链表的倒数第 N 个结点
    删除链表的倒数第N个结点(中等)Q:给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。 示例:示例一:输入:head=[1,2,3,4,5],n=2输出:[1,2,3,5]示例二:输入:head=[1],n=1输出:[]实例三:输入:head=[1,2],n=1输出:[1]A:思路:对于本题来讲,其本质仍为删除链表......