C++版本将两个有序链表合并为一个新的有序链表并返回原理讲解及代码实现

本文详细讲解如何使用C++将两个已排序的链表合并成一个新有序链表的过程,涉及数据结构与算法知识,包括关键步骤解析及完整代码示例。
摘要由CSDN通过智能技术生成

C++版本将两个有序链表合并为一个新的有序链表并返回原理讲解及代码实现

/*!
* Copyright (c) 2020,ZYF.
* All Rights Reserved.
*
* \file MergerListNode.cpp
* \brief C++版本将两个有序链表合并为一个新的有序链表并返回原理及代码实现
*
* \author ZYF
* \date 2020/7/2 23:26:20
* \version 1.0.0
*/

#include <iostream>
#include <stack>
using namespace std;

/*
* 链表
*/
struct ListNode
{
   
	int data;//节点值
	ListNode* next;//下一节点
};

/*!
* \brief 链表尾部追加节点
* \param pNode : ListNode * 待插入节点
* \param nData : int 节点值
* \returns void :
* \throws <exception class>
* \remarks
* \see
*/
void AddListNode(ListNode* pNode, int nData)
{
   
	ListNode* pNew = new ListNode();
	pNew->data = nData;
	pNew->next = nullptr;

	if (pNode == nullptr)
		pNode = pNew;
	else
	{
   
		ListNode* pTmp = pNode;

		while (pTmp->next != nullptr)
			pTmp = pTmp->next;

		pTmp->next = pNew;
	}
}

/*!
* \brief 从头到尾或者从尾到头打印链表
* \param pHead : ListNode * 链表头节点
* \param bReversingly : bool 是否从尾到头打印链表(true:从尾到头打印;false:从头到尾打印)
* \returns void :
* \throws <exception class>
* \remarks
* \see
*/
void
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Zhangyanfeng1

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值