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

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>
struct node
{
    int data;
    struct node *next;
}*head,*p;
int main()
{
  int i,j=0;
  head=(struct node *)malloc(sizeof(struct node));
  head->next=NULL;
  while(j!=-1)
  {
      p=(struct node *)malloc(sizeof(struct node));
      p->next=NULL;
      scanf("%d",&p->data);
      if(p->data==-1)
        break;
      p->next=head->next;
      head->next=p;
  }
  p=head->next;
  while(p!=NULL)
  {
      if(p->next!=NULL)
        printf("%d ",p->data);
      else
        printf("%d\n",p->data);
      p=p->next;
  }
    return 0;
}





#include <stdio.h>
#include <stdlib.h>
struct node
{
    int data;
    struct node *next;
}*p,*q,*head,*tail;
void print(struct node *head)
{  // struct node *p;
    p=head->next;
    while(p!=NULL)
    {
        if(p->next!=NULL)
            printf("%d ",p->data);
        else
            printf("%d\n",p->data);
        p=p->next;
    }
}
struct node *create()
{
  //  struct node *tail,*head,*p;
    int d;
    head=(struct node *)malloc(sizeof(struct node));
    head->next=NULL;
    tail=head;
   while(~scanf("%d",&d)&&(d!=-1))
    {
        p=(struct node *)malloc(sizeof(struct node));
        p->next=NULL;
       p->data=d;
        tail->next=p;
        tail=p;
    }
    return head;
}
void reverse(struct node *head)
{
    //struct node *p,*q;
    p=head->next;
    head->next=NULL;
    q=p->next;
    while(p!=NULL)
    {
        p->next=head->next;
        head->next=p;
        p=q;
        if(q) q=q->next;
    }
}
int main()
{


   struct node *h;
   h=create();
   reverse(h);
   print(h);
    return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/509324.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

DBUtils使用详细示例(转载)

https://www.cnblogs.com/smyhvae/p/4085684.html

APC异步过程调用

转自&#xff1a;http://blog.sina.com.cn/s/blog_c2ef450f010192hx.html APC 异步过程调用 记得第一次看见这个名词的时候&#xff0c;觉得云里雾罩&#xff0c;然而上网看了下它的介绍&#xff0c;感觉说的都是没头没脑的 然而今天&#xff0c;我再次接触了它&#xff0c;我将…

张小龙:如何把产品做简单

今天从一个小故事开始讲&#xff1a;为什么苹果的手机只有一个按钮&#xff1f; &#xff08;台下&#xff1a;我觉得对于用户来说&#xff0c;只有一个按钮不会有太多的干扰&#xff0c;只要从这里开始&#xff0c;其它的菜单都在这里面了&#xff0c;这是我个人的一些想法。&…

数据结构实验之链表九:双向链表

Problem Description 学会了单向链表&#xff0c;我们又多了一种解决问题的能力&#xff0c;单链表利用一个指针就能在内存中找到下一个位置&#xff0c;这是一个不会轻易断裂的链。但单链表有一个弱点——不能回指。比如在链表中有两个节点A,B&#xff0c;他们的关系是B是A的后…

不敢死队问题

Problem Description 说到“敢死队”&#xff0c;大家不要以为我来介绍电影了&#xff0c;因为数据结构里真有这么道程序设计题目&#xff0c;原题如下&#xff1a; 有M个敢死队员要炸掉敌人的一个碉堡&#xff0c;谁都不想去&#xff0c;排长决定用轮回数数的办法来决定哪个战…

槽边往事

http://chuansong.me/account/bitsea?start12

数据结构实验之链表五:单链表的拆分

Problem Description 输入N个整数顺序建立一个单链表&#xff0c;将该单链表拆分成两个子链表&#xff0c;第一个子链表存放了所有的偶数&#xff0c;第二个子链表存放了所有的奇数。两个子链表中数据的相对次序与原链表一致。Input 第一行输入整数N;&#xff1b; 第二行依次输…

聊天机器人调用API实现

后端调用API&#xff1a; package com.mychat.servlet;import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.HttpURLConnection; import java.net.URL; import java.net.URLEncoder;…

Dump文件

1. Dump文件 1. Dump文件介绍 Dump文件(Dump File)&#xff0c;也叫转储文件&#xff0c;以.DMP为文件后缀。dump文件是进程在内存中的镜像文件&#xff0c;通过转换然后存储成以.DMP后缀的文件。dump文件根据存储时的选项不同&#xff0c;会生成不同大小的文件&#xff0c;其中…

整理音乐

Problem Description 请用链表完成下面题目要求。 xiaobai 很喜欢音乐&#xff0c;几年来一直在收集好听的专辑。他有个习惯&#xff0c;每次在听完一首音乐后会给这首音乐打分&#xff0c;而且会隔一段时间给打好分的音乐排一个名次。今天 xiaobai 打开自己的音乐文件夹&#…

VS2013正在等待所需操作完成

在用VS2013打开解决方案的时候&#xff0c;遇到”正在等待所需操作完成 &#xff0c;此对话框将在操作完成后关闭“一直弹出显示&#xff0c;解决方案无法加载的情况&#xff01;此时需要将与解决方案名字相同的文件全部相同&#xff08;除解决方案文件除外&#xff09;全部删除…

web聊天室实现

后端&#xff1a; package com.jsx.chat;import java.io.IOException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.HashMap; import java.util.Map; import java.util.concurrent.CopyOnWriteArraySet;import javax.websocket.OnClose; imp…

QPSQL driver not loaded

在用qt连接postgreSQL数据库时&#xff0c;出现驱动无法加载的情况&#xff0c;如下图&#xff1a; 代码&#xff1a;mPgDataBase QSqlDatabase::addDatabase("QPSQL"); 如下如下错误&#xff1a; 解决方案&#xff1a; 网上下载”libpq.dll文件“拷贝至运行文件…

一对一聊天ajax实现

前端页面&#xff1a; 好友列表&#xff1a; 好友列表代码&#xff1a; <% page language"java" contentType"text/html; charsetUTF-8"pageEncoding"UTF-8"%> <% page import"java.util.Random" %> <% taglib ur…

选票统计

Problem Description 某校学生会主席由全校学生投票选举产生&#xff0c;共有&#xff4d;名候选人报名参选&#xff0c;编号为1到&#xff4d;&#xff08;0&#xff1c;&#xff4d;&#xff1c;1000&#xff09;&#xff0c;全校有&#xff4e;名学生&#xff08;0&#xff…

“模块计算机类型“x64”与目标计算机类型“X86”冲突解决方案

最近在编译一款开源软件的时候&#xff0c;遇到了“模块计算机类型“x64”与目标计算机类型“X86”冲突的问题&#xff0c;网上查了好多资料&#xff0c;都是配置“链接器-》高级-》目标计算机”和选择X64平台编译器&#xff0c;可是怎么试都不行&#xff0c;最后发现是“命令行…

通用的websocket模板代码

web聊天室后端代码模板: package com.jsx.chat;import java.io.IOException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.HashMap; import java.util.Map; import java.util.concurrent.CopyOnWriteArraySet;import javax.websocket.OnClos…

最终排名

Time Limit: 1000MS Memory Limit: 65536KBSubmit StatisticProblem Description 第四届山东理工大学ACM网络编程擂台赛比赛完后需要产生一个最终排名&#xff0c;排名按照题数多少来决定。但是有太多的队伍参与&#xff0c;手动计算排名已经不能满足比赛的需求。现在有一份名单…