设计在链式存储结构上合并排序的算法

代码如下:

void mergelklist(lklist *ha,lklist *hb,lklist *&hc)
{
	lklist *s=hc=0;
	while(ha!=0 && hb!=0)
	{
		if(ha->data<hb->data)
		{
			if(s==0)
			{
				hc=s=ha;
			}else{
				s->next=ha;
				s=ha;
			}
			ha=ha->next;
		}else{
			if(s==0)
			{
				hc=s=hb;
			}else{
				s->next=hb;
				s=hb;
			}
			hb=hb->next;
		}
		if(ha==0)
		{
			s->next=hb;
		}else{
			s->next=ha;
		}
	}
}
发布了67 篇原创文章 · 获赞 25 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_41104871/article/details/101541325