zoukankan      html  css  js  c++  java
  • 带结点与不带结点用头插法和尾插法创建单链表

    一、采用带有头结点的头插法逆向建立单链表

    Linklist List_HeadInsert1(LinkList &L)  //采用带有头结点的头插法逆向建立单链表 
    {
    	LNode *s;  //声明一个临时结点 
    	int x;
    	L=(LinkList)malloc(sizeof(LNode));  //创建头结点
    	L->next=NULL;  //初始为空链表 
    	scanf("%d",&x);  //输入结点的值 
    	while(x!=9999)
    	{
    		s=(LNode*)malloc(sizeof(LNode));  //创建新结点 
    		s->data=x;
    		s->next=L->next;  //将新结点插入表中,L为头指针 
    		L->next=s;
    		scanf("%d",&x);
    	}
    	return L;
    }
    

      

    二、采用不带有头结点的头插法逆向建立单链表

    Linklist List_HeadInsert2(LinkList &L)  //采用不带有头结点的头插法逆向建立单链表 
    {
    	LNode *s;  //声明一个临时结点 
    	int x;
    	L=NULL;  
    	scanf("%d",&x);  //输入结点的值 
    	while(x!=9999)
    	{
    		s=(LNode*)malloc(sizeof(LNode));  //创建新结点 
    		s->data=x;
    		if(L==NULL)  // 若第一次创建节点,则将该点设置为头节点
    		{
    			L=s;
    			s->next=NULL;
    		 } 
    		else{  // 若不是第一次创建节点,则直接将新节点接到链表头
    			s->next=L;
    			L=s;
    		}
    		scanf("%d",&x);
    	}
    	return L;
    }
    

      

    三、采用带有头结点的尾插法正向建立单链表

    Linklist List_TailInsert1(LinkList &L)  //采用带有头结点的尾插法正向建立单链表 
    {
    	LNode *s,*r;  //s为临时结点,r为表尾指针 
    	int x;
    	L=(LinkList)malloc(sizeof(LNode));  //创建头结点
    	L->next=NULL;  //初始为空链表 
    	r=L;
    	scanf("%d",&x);  //输入结点的值 
    	while(x!=9999)
    	{
    		s=(LNode*)malloc(sizeof(LNode));  //创建新结点 
    		s->data=x;
    		r->next=s;
    		r=s;  //r指向新的表尾结点 
    		scanf("%d",&x);
    	}
    	r->next=NULL;  //尾结点指针为空 
    	return L;
    }
    

      

    四、用不带有头结点的尾插法正向建立单链表

    Linklist List_TailInsert2(LinkList &L)  //采用不带有头结点的尾插法正向建立单链表 
    {
    	LNode *s,*r;  //s为临时结点,r为表尾指针 
    	int x;
    	L=NULL;  
    	r=L;
    	scanf("%d",&x);  //输入结点的值 
    	while(x!=9999)
    	{
    		s=(LNode*)malloc(sizeof(LNode));  //创建新结点 
    		s->data=x;
    		if(L==NULL)  // 创建链表的第一个节点
    		{
    			L=s;
    			r=s;
    			s->next=NULL;
    		 } 
    		else{
    			r->next=s;
    			r=s;
    		}
    		scanf("%d",&x);
    	}
    	r->next=NULL;  //尾结点指针为空 
    	return L;
    }
    

      

  • 相关阅读:
    Silverlight中弹出网页
    Silverlight中嵌套html、swf、pdf
    silverlight 用户浏览器未安装SL插件问题
    silverlight视频、音频
    Silverlight形状、画笔、变换、图像处理、几何图形
    Silverlight动画学习笔记(三):缓动函数
    Silverlight动画的基本知识、关键帧动画
    Silverlight独立存储
    关于Silverlight调用天气预报接口问题
    c#获取今天星期几
  • 原文地址:https://www.cnblogs.com/canneddream/p/14902435.html
Copyright © 2011-2022 走看看