程序填空题:建立单链表
本题要求建立单链表。例如,对于给出的输入数据`1 2 3 4`,建立的单链表如下图所示。

请在空白处填入正确的代码。
```c++
typedef int ElemType;
typedef struct LNode
{
ElemType data;
struct LNode *next;
} LinkNode;
void CreateListF(LinkNode *&L, ElemType a[], int n)
{
LinkNode *s;
int i;
L = (LinkNode *)malloc(sizeof(LinkNode));
L->next = NULL;
for (i = 0; i < n; i++)
{
s = (LinkNode *)malloc(sizeof(LinkNode));
@@[s->data = a[i]](3);
@@[s->next = L->next](3);
@@[L->next = s](3);
}
}
```
答案:
第1空:s->data = a[i]
第2空:s->next = L->next
第3空:L->next = s

请在空白处填入正确的代码。
```c++
typedef int ElemType;
typedef struct LNode
{
ElemType data;
struct LNode *next;
} LinkNode;
void CreateListF(LinkNode *&L, ElemType a[], int n)
{
LinkNode *s;
int i;
L = (LinkNode *)malloc(sizeof(LinkNode));
L->next = NULL;
for (i = 0; i < n; i++)
{
s = (LinkNode *)malloc(sizeof(LinkNode));
@@[s->data = a[i]](3);
@@[s->next = L->next](3);
@@[L->next = s](3);
}
}
```
答案:
第1空:s->data = a[i]
第2空:s->next = L->next
第3空:L->next = s