//头文件
#ifndef HEADLIST_H
#define HEADLIST_H
#include
using namespace std;
template
class LinkNode{
public:
T data;
LinkNode
* link;
LinkNode()
{
//默认构造函数
}
LinkNode(const T value, LinkNode
* str = NULL)
{
data = value;
}
};
template
class HeadList{ private: LinkNode
* head; LinkNode
* position = NULL; public: HeadList(); ~HeadList(); void setValue(T data); void print(); void clear(); void Merge(HeadList
& str); }; template
HeadList
::HeadList() { //该立案表拥有头结点,在头结点中不存放任何数据 head = new LinkNode
(); head->link = NULL; position = head; } template
HeadList
设ha和hb分别是两个带头节点的费递减有序单链表的表头指针,设计以算法,将将两个有序链表合成一个非递减的有序单链表,该程序以以前发表的博客中的链表中的区别在与该立案表带有头结点
最新推荐文章于 2024-08-15 19:50:02 发布
这篇博客介绍了一个C++实现的算法,用于合并两个带头节点的非递减有序单链表。该程序创建了一个`HeadList`模板类,包含插入元素、打印链表、清空链表和合并链表的方法。`Merge`方法通过比较两个链表节点的值,确保合并后的链表依然保持非递减顺序。主函数展示了如何使用这个类来创建和合并两个链表。
摘要由CSDN通过智能技术生成