#include "stdafx.h"
#include
#include
using namespace std;
template
struct Node {
T data;
Node
};
template
Node
{
//Node
Node
Node
Node
for (unsigned int i = 0; i < arr.size(); i++)
{
//p= (Node
p = new Node
pre->next = p;
p->data = arr[i];
pre = p;
}
p->next = NulL;
return head->next;
}
template
voID PrintList(Node
{
Node
p->next = head; //为了方便遍历
while (p->next != NulL)
{
p = p->next;
cout << p->data << "->";
}
cout<<"NulL"<< endl;
}
template
Node
{
Node
while (cur != NulL)
{
temp = cur->next;
cur->next = pre;//翻转
pre = cur;
cur = temp;
}
return pre;
}
//插入第n个元素后面
template
Node
{
Node
int i = n - 1;
while (i > 0)
{
p = p->next;
i--;
}
Node
q->data = val;
q->next = p->next;
p->next = q;
return head;
}
//删除第n个元素后面
template
Node
{
Node
int i = n - 1;
while (i > 0)
{
p = p->next;
if (p->next == NulL)//最后一个元素,不作删除
return head;
i--;
}
if (p->next->next == NulL)//倒数第二个(删除最后一个)
p->next = NulL;
else
p->next = p->next->next;
return head;
}
int main()
{
vector
arr = {1,2,3,4,5};
Node
PrintList(head);
/*Node
PrintList(rhead);*/
Node
PrintList(addhead);
delNode(addhead,5);
PrintList(addhead);
getchar();
return 0;
}
总结以上是内存溢出为你收集整理的链表的基本 *** 作(C++)全部内容,希望文章能够帮你解决链表的基本 *** 作(C++)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)