//头文件
#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::~HeadList()
{
clear();
}
template
void HeadList::setValue(T data)
{
if (position == head)
{
LinkNode* p = head;
p->link = new LinkNode(data);
p = p->link;
p->link = NULL;
position = p;
}
else{
LinkNode* p = position;
if (data >= p->data)
{
p->link = new LinkNode(d
设ha和hb分别是两个带头节点的费递减有序单链表的表头指针,设计以算法,将将两个有序链表合成一个非递减的有序单链表,该程序以以前发表的博客中的链表中的区别在与该立案表带有头结点
最新推荐文章于 2021-11-14 17:17:45 发布