1. 程式人生 > >2201: 逆置線性表(線性表)

2201: 逆置線性表(線性表)

2201: 逆置線性表(線性表)

時間限制: 1 Sec  記憶體限制: 128 MB
提交: 948  解決: 552
[提交][狀態][討論版][命題人:外部匯入]

題目描述

(線性表)請寫一個演算法將順序儲存結構的線性表(a1...an)逆置為(an...a1)。

輸入

輸入長度n:5

輸入資料:1 2 3 4 5

輸出

5 4 3 2 1

樣例輸入

5
7 8 9 10 11 

樣例輸出

11 10 9 8 7 

#include<cstdio>
#include<malloc.h>
typedef int ElemType;
typedef struct LNode
{
    ElemType data;
    struct LNode *next;
}LNode, LinkList;
LinkList CreateList(LinkList *&L, int n)
{
    LNode *s;
    int x, i;
    L = (LinkList *)malloc(sizeof(LinkList));
    L->next = NULL;
    for(i = 0; i < n; ++i)
    {
        scanf("%d", &x);
        s = (LNode *)malloc(sizeof(LNode));
        s->data = x;
        s->next = L->next;
        L->next = s;
    }
}
void DispList(LinkList *L)
{
    LinkList *p = L->next;
    while(p != NULL)
    {
        printf("%d ", p->data);
        p = p->next;
    }
}
int main()
{
    LinkList *L;
    int n;
    scanf("%d", &n);
    CreateList(L, n);
    DispList(L);
    return 0;
}