首页 > 代码库 > 单链表复习
单链表复习
单链表复习
作者:vpoet
mails:18200268879@163.com
注:转载请注明出处,谢谢合作
#include <iostream> #include <stack> using namespace std; typedef struct ListNode { int data; struct ListNode* next; }NODE; NODE *CreateList() { NODE * head,*p,*s; head=(NODE*)malloc(sizeof(NODE)); p=head; int LinkData; int InputIndex=1; while(InputIndex) { cout<<"Please input the Node data.(if 0 is inputed,CreateLink Over!): "; cin>>LinkData; if(0!=LinkData) { s=(NODE*)malloc(sizeof(NODE)); s->data=http://www.mamicode.com/LinkData;"The LinkList is: "; while(p!=NULL) { cout<<p->data<<" "; p=p->next; } } void ListLength(NODE*head) { NODE* p=head; int count =0; while(p!=NULL) { count++; p=p->next; } cout<<"The length is: "<<count<<endl; } void InsertNode(NODE* head) { NODE *p=head; while(p->next!=NULL) { p=p->next; } NODE *New; New=(NODE*)malloc(sizeof(NODE)); cout<<"Please input the new data: "; cin>>New->data; p->next=New; New->next=NULL; head=p; } void ReversePrint(NODE* head) { stack <NODE*> StackNode; NODE *p=head; while(p!=NULL) { StackNode.push(p); p=p->next; } cout<<"Reverse to Print: "; while(!StackNode.empty()) { NODE* temp; temp=StackNode.top(); StackNode.pop(); cout<<temp->data<<" "; } } void DeleteNode(NODE *head,int DelValue) { NODE *p=head; while(p!=NULL) { if(p->next->data=http://www.mamicode.com/=DelValue)"Create New LinkList....\n"<<endl; NODE *p=CreateList(); cout<<"Print the LinkList.....\n"<<endl; Print(p); cout<<"Print the length of LinkList...\n"<<endl; ListLength(p); cout<<"Insert a New LinkNode....\n"<<endl; InsertNode(p); cout<<"Cout The New LinkNode....\n"<<endl; Print(p); cout<<"Reverse to input the LinkList...\n"<<endl; ReversePrint(p); cout<<"Delete a Node in LinkList....\n"<<endl; int DelValue; cout<<"Please input the Delete Node Value"<<endl; cin>>DelValue; DeleteNode(p,DelValue); cout<<"Print the del Node LinkList....\n"<<endl; Print(p); cout<<endl; return 0; }
单链表复习
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。