自己写的链表的小程序
来源:互联网 发布:打码平台源码 编辑:程序博客网 时间:2024/06/15 17:28
自己写的关于链表的小程序。baodian13_1.cpp
//实现单链表的建立,测长,打印功能#include <iostream>#include <cstdio>#include <iomanip>using namespace std;typedef struct Node{int data;struct Node* next;}Node,*LinkList;//单链表的建立//数据从键盘输入,规定data=0,数据输入停止LinkList Creat_linklist(){ int cycle=1;//用于控制循环LinkList L=(LinkList)malloc(sizeof(Node));//建立的新链表LinkList temp=L;//指向链表的尾接点if(NULL==L){cout<<"Failed to malloc a new Linklist!";return NULL;}L->next=NULL;//建立空的头结点while(cycle){int data;//用于存放键盘中输入的数据cout<<"Please input the data:"<<endl; cin>>data; if(data!=0) { LinkList s=(LinkList)malloc(sizeof(Node)); s->data=data;//新建节点赋初值 s->next=NULL; temp->next=s;//建立链接,更新链表 temp=temp->next; }else{cycle=0;}}return L;}//单链表的测长int GetLength_Linklist(LinkList L){if(NULL==L){cout<<"There is no node!"<<endl;}if (NULL==L->next){cout<<"The linklist is empty!"<<endl;}int i=0;LinkList temp=L->next;while(NULL!=temp){i++;temp=temp->next;}return i;}//单链表的打印void Print_Linklist(LinkList L){if(NULL==L){cout<<"There is no node!"<<endl;}if (NULL==L->next){cout<<"The linklist is empty!"<<endl;}LinkList temp;cout<<"链表的打印"<<endl;for (temp=L->next;NULL!=temp->next;temp=temp->next){cout<<setw(3)<<temp->data<<"->";}cout<<setw(3)<<temp->data;cout<<endl;}int main(){LinkList L=Creat_linklist();Print_Linklist(L);int i=GetLength_Linklist(L);cout<<"链表的长度:"<<i<<endl;return 0;}
//实现删除节点值为num的节点
//num--要删除的节点值
LinkList Node_Delete(LinkList L,int num){if(NULL==L){cout<<"There is no node!"<<endl;}if (NULL==L->next){cout<<"The linklist is empty!"<<endl;}LinkList temp=L->next;//用于指向被删除的节点LinkList p=L;//用于指向被删除节点的上一个节点while (NULL!=temp->next)//检查前N-1个节点{if (num==temp->data){p->next=temp->next;free(temp);cout<<"删除节点成功。"<<endl;return L;}else{p=temp;temp=temp->next;}}//检查尾节点if (num==temp->data&&NULL==temp->next){p->next=NULL;free(temp);cout<<"删除节点成功。"<<endl;return L;}else{cout<<"没有此节点,无法删除!"<<endl;}}
0 0
- 自己写的小程序
- 自己写的链表的小程序
- 自己写的一个Android小程序
- 自己写的一个除法小程序
- java自己写的一个小程序
- 自己瞎写的小程序
- 第一个自己写的小程序
- 恶作剧小程序,自己写的第一个autoit程序
- python 自己写的计算工资的小程序
- 自己写的第一个php小程序
- 自己学习JSP写的一个小程序
- 自己写得C++简单的四则运算小程序
- 自己写的java学生成绩评定小程序
- 自己写的第一个小程序,记录点滴
- 关于命名空间自己写的小程序
- 自己写的小ls
- 自己写的小网站
- 自己写的发牌程序!
- POJ 1515 Street Directions
- sqlserver所用端口、端口设置
- 让Qt Creator支持Windows Phone 8开发
- LeetCode 47 Construct Binary Tree from Preorder and Inorder Traversal
- Android permission 访问权限大全
- 自己写的链表的小程序
- OpenCV问题集锦,图片显示不出来,WaitKey(0),imread()不能读图片,未经处理的异常,等问题集合
- poj3181
- 【微信】所有UI+功能指引+摇一摇
- [讲课]2-10 流程控制
- 地方高考信息管理系统方案
- 新职笔记,oracle与js常用方法
- CSS特性的取值以及浏览器的对错误CSS特性值的容错处理
- CVTE在线软件专业题