您的位置:首页 > 其它

试编写在无头结点的单链表上实现线性表的插入操作的算法,并和带头结点的单链表上的插入操作的算法进行比较

2016-10-05 10:08 405 查看
无头结点,头指针为 head

void LinkList<DataType>::Insert(int i, DataType x)
{
p = head;
int count = 1;
if(i == 1)
{
s = new Node;
s->data = x;
s->next = head;
head = s;
}
else
{
while(p != NULL && count < i - 1)
{
p = p->next;
count++;
}
if(p == NULL)
cout<<"你输入的位置超出了范围!";
else
{
s = new Node;
s->data = x;
s->next = p->next;
p->next = s;
}
}
}


有头结点 first

void LinkList<DataType>::Insert(int i, DataType x)
{
p = first;
int count = 0;
while(p != NULL && count < i - 1)
{
p = p->next;
count++;
}
if(p == NULL)
cout<<"你输入的位置超出了范围!";
else
{
s = new Node;
s->data = x;
s->next = p->next;
p->next = s;
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐