zoukankan      html  css  js  c++  java
  • 数据结构实验之链表三:链表的逆置

    数据结构实验之链表三:链表的逆置

    Time Limit: 1000MS Memory Limit: 65536KB

    Submit Statistic

    Problem Description

    输入多个整数,以-1作为结束标志,顺序建立一个带头结点的单链表,之后对该单链表的数据进行逆置,并输出逆置后的单链表数据。

    Input

    输入多个整数,以-1作为结束标志。

    Output

    输出逆置后的单链表数据。

    Example Input

    12 56 4 6 55 15 33 62 -1

    Example Output

    62 33 15 55 6 4 56 12
    #include <stdio.h>
    #include <stdlib.h>
    #include <malloc.h>
    typedef struct node
    {
    	int data;
    	struct node *next;
    }list;
    int main()
    {
    	list *p,*head;
    	head = (list *)malloc(sizeof(list));
    	head->next = NULL;
    	int n;
    	while(scanf("%d",&n)!=EOF)
    	{
    		if(n==-1)
    		{
    			break;
    		}
    		else
    		{
    			p = (list *)malloc(sizeof(list));
    			p->data = n;
    			p->next = head->next;
    			head->next = p;
    		}
    	}
    	p = head->next;
    	while(p)
    	{
    		if(p->next!=NULL)
    		{
    			printf("%d ",p->data);
    		}
    		else
    		{
    			printf("%d\n",p->data);
    		}
    		p=p->next;
    	}
    
    	return 0;
    }
    
    只允许蒋文文转载。
    #include <stdio.h>
    #include <malloc.h>
    #include <stdlib.h>
    typedef struct LNode{
    	int data;
    	struct LNode *next; 
    }*LinkList,LNode;
    LinkList createLinkList(LinkList &head){
    	LNode *tail,*p;
    	head =tail = (LinkList)malloc(sizeof(LNode));
    	head->next = NULL;
    	tail = head;
    	tail->next = NULL;
    	int data=0;
    scanf("%d",&data);
    do
    {
    	p = (LinkList)malloc(sizeof(LNode));
    	p->next = NULL;
    	p->data = data;
    	p->next = tail->next; //顺序不能错
        tail->next = p;
    	scanf("%d",&data);
    }while(data!=-1);
    	return head;
    
    }
    void display(LinkList p){
    	p=p->next;
    	while(p){
    		if (p->next)
    		{
    			printf("%d ",p->data);
    		}else{
    			printf("%d\n",p->data);
    		}
    		p = p->next;
    	}
    
    }
    
    int main(){
    	LinkList linklist = NULL;
    	createLinkList(linklist);
    	display(linklist);
    	return 0;
    }
  • 相关阅读:
    C++设计模式之享元模式
    C++设计模式之中介者模式
    C++设计模式之职责链模式
    C++设计模式之命令模式
    C++设计模式之桥接模式
    C++设计模式之单例模式
    C++设计模式之组合模式
    C++设计模式之备忘录模式
    C++设计模式之适配器模式
    操作系统(4)实验0——准备知识、基本内联汇编、扩展内联汇编
  • 原文地址:https://www.cnblogs.com/CCCrunner/p/11782152.html
Copyright © 2011-2022 走看看