zoukankan      html  css  js  c++  java
  • 5-19 求链式线性表的倒数第K项 (20分)

    给定一系列正整数,请设计一个尽可能高效的算法,查找倒数第K个位置上的数字。

    输入格式:

    输入首先给出一个正整数K,随后是若干正整数,最后以一个负整数表示结尾(该负数不算在序列内,不要处理)。

    输出格式:

    输出倒数第K个位置上的数据。如果这个位置不存在,输出错误信息NULL

    输入样例:

    4 1 2 3 4 5 6 7 8 9 0 -1
    

    输出样例:

    7


     1 #include <stdio.h>
     2 
     3 typedef struct Node
     4 {
     5     int data;
     6     struct Node * next;
     7 }Node, * linkList;
     8 
     9 
    10 void InitList(linkList *p)
    11 {
    12     (*p) = (linkList)malloc(sizeof(Node));
    13     (*p)->next = NULL;
    14 }
    15 
    16 void creat(linkList L)
    17 {
    18     Node *s;
    19     int num, flag = 1;
    20     while(flag)
    21     {
    22         scanf("%d", &num);
    23         if(num >= 0)
    24         {
    25             s = (linkList)malloc(sizeof(Node));
    26             s->data = num;
    27             s->next = L->next;
    28             L->next = s;
    29         }
    30         else
    31         {
    32             flag = 0;
    33         }
    34     }
    35 }
    36 
    37 void printNum(linkList L, int n)
    38 {
    39     Node *p = L->next;
    40     int i = 0;
    41     while(p != NULL && i < n - 1)
    42     {
    43         p = p->next;
    44         i++;
    45     }
    46     if(p != NULL)
    47         printf("%d
    ", p->data);
    48     else
    49         printf("NULL
    ");
    50 
    51 }
    52 
    53 int main()
    54 {
    55     Node *p;
    56     int n;
    57     scanf("%d", &n);
    58     InitList(&p);
    59     creat(p);
    60     printNum(p, n);
    61     return 0;
    62 }
  • 相关阅读:
    Node Exporter监控指标
    Prometheus组件介绍
    记录阿里云安全组设置遇到的奇葩问题--出口ip
    7.prometheus监控多个MySQL实例
    使用Docker Compose部署SpringCloud项目docker-compose.yml文件示例
    Docker Compose的安装及命令补全
    如何调试 Docker
    Dockerfile 最佳实践
    Docker 命令查询
    Docker常见问题
  • 原文地址:https://www.cnblogs.com/hello-lijj/p/7096146.html
Copyright © 2011-2022 走看看