zoukankan      html  css  js  c++  java
  • PAT:1052. Linked List Sorting (25) 部分错误

    #include<stdio.h>
    #include<string.h>
    #include<algorithm>
    using namespace std;
    struct node
    {
      int address;
      int data;
      int next;
      bool tag;
    }Node[100066];

    bool cmp(node a,node b)
    {
      return a.data<b.data;
    }

    int main()
    {
      memset(Node,0,sizeof(Node));
      int n,front;
      scanf("%d%d",&n,&front);
      for(int i=0 ; i<n ; ++i) //记录节点
      {
        int now,data,next;
        scanf("%d%d%d",&now,&data,&next);
        Node[now].address=now;
        Node[now].data=data;
        Node[now].next=next;
      }
      int cnt=0,add; //记录有相关节点个数

      for(add=front ; add!=-1 ; add=Node[add].next) //找到所有属于头结点链表的相关节点
      {
        ++cnt;
        Node[add].tag=1;
      }
      //输出
      if(cnt==0)        //特判没有节点的时候

      {
        printf("0 -1");
        return 0;
      }
      sort(Node,Node+100066,cmp);
      for(int i=0 ; i<100066 ; ++i)
      {
        if(Node[i].tag==1) //按data升序,大的一定在后面,要遍历到100065,因为memset之后所有初始data都是0
        {
          --cnt;
          if(cnt==0)
          {
            printf("%05d %d -1 ",Node[i].address, Node[i].data);
            break;
          }
          else
            printf("%05d %d %05d ",Node[i].address, Node[i].data,Node[i+1].address);
        }
      }
    return 0;
    }

  • 相关阅读:
    mac下使用brew安装mongodb
    从零构建vue+webpack (一)
    常用软件集合(2018/08/22)
    solr集群安装部署
    zookeeper集群部署
    redis集群部署
    linux 安装jdk
    zTab layui多标签页组件
    spring boot集成swagger2
    SSH客户端,FinalShell服务器管理,远程桌面加速软件,支持Windows,Mac OS X,Linux,版本2.6.3.1
  • 原文地址:https://www.cnblogs.com/Evence/p/4315466.html
Copyright © 2011-2022 走看看