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