SDUT 链表3

简介: SDUT 链表3

7-3 sdut-C语言实验-链表的结点插入


分数 20


全屏浏览


切换布局


作者 马新娟


单位 山东理工大学


给出一个只有头指针的链表和 n 次操作,每次操作为在链表的第 m 个元素后面插入一个新元素x。若m 大于链表的元素总数则将x放在链表的最后。


输入格式:

多组输入。每组数据首先输入一个整数n(n∈[1,100]),代表有n次操作。

接下来的n行,每行有两个整数Mi(Mi∈[0,10000]),Xi。

输出格式:

对于每组数据。从前到后输出链表的所有元素,两个元素之间用空格隔开。

输入样例:

4
1 1
1 2
0 3
100 4

输出样例:

3 1 2 4

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

栈限制

8192 KB

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
struct chain
{
    int data;
    struct chain *next;
};
int main()
{
    int n, num, sum, count;
    while(~scanf("%d", &n))
    {
      struct chain *p, *q, *head;
      head = (struct chain *)malloc(sizeof(struct chain));
      head->next = NULL;
      sum = 0;
      while(n--)
      {
          count = 0;
          q = head;
          p = (struct chain *)malloc(sizeof(struct chain));
          scanf("%d%d", &num, &p->data);
          if(num <= sum)
          {
              while(count <= num)
                {
                  if(count == num)
                  {
                    p->next = q->next;
                      q->next = p;
                    break;
                  }
                  q = q->next;
                count++;
              }
        }
          else
          {
            while(q->next)
                  q = q->next;
              q->next = p;
              q = p;
            q->next = NULL;
          }
          sum++;
    }
    q = head->next;
    while(q)
    {
        printf("%d", q->data);
        if(q->next)
            printf(" ");
        else
            printf("\n");
            q = q->next;
    }
  }
    return 0;
}
目录
相关文章
|
2天前
|
机器学习/深度学习 存储
sdut pta 链表3(优化)-----7-3 sdut-C语言实验-链表的结点插入
sdut pta 链表3(优化)-----7-3 sdut-C语言实验-链表的结点插入
4 0
|
2天前
sdut 链表10------7-10 sdut-C语言实验-不敢死队问题
sdut 链表10------7-10 sdut-C语言实验-不敢死队问题
5 0
|
2天前
SDUT 链表9-------7-9 sdut-C语言实验-约瑟夫问题
SDUT 链表9-------7-9 sdut-C语言实验-约瑟夫问题
6 0
|
2天前
sdut 链表 8 -----7-8 sdut-C语言实验-双向链表
sdut 链表 8 -----7-8 sdut-C语言实验-双向链表
5 0
|
2天前
sdut 链表7
sdut 链表7
5 0
|
2天前
sdut 链表6-------7-6 sdut-C语言实验-有序链表的归并
sdut 链表6-------7-6 sdut-C语言实验-有序链表的归并
4 0
|
2月前
|
存储
sdut 链表5
sdut 链表5
33 1
|
2月前
sdut 链表4
sdut 链表4
23 1
|
2月前
sdut链表lab2
sdut链表lab2
29 1
|
2月前
|
存储
sdut 链表lab1
sdut 链表lab1
25 1