之后发表的数据结构相关代码都是从b站看的印度小哥的视频写的代码, 比较简单,只考虑一般情况。
//function :insert an integer at begin of list
#include<stdio.h>
#include<stdlib.h>
//void Insert(int x);
//void Print();
struct Node *Insert(struct Node* head, int x);
void Print(struct Node* head);
struct Node{
int data;
struct Node* next;
};
//struct Node * head;
int main()
{
struct Node * head;
head = NULL; //empty list;
printf("how many numbers?\n");
int n, i, x;
scanf("%d", &n);
for(i=0; i<n; i++)
{
printf("enter number:\n");
scanf("%d", &x);
//Insert(x);
head = Insert(head, x);
//Print();
Print(head);
}
return 0;
}
/*
void Insert(int x)
{
struct Node *temp = (struct Node*)malloc(sizeof(struct Node)); //insert into head
temp->data = x;
temp->next = head;
head = temp;
}
*/
/*
void Print()
{
struct Node* temp = head; //cat not modify head
printf("List is:");
while(temp != NULL)
{
printf("%d ", temp->data);
temp = temp->next;
}
printf("\n");
}
*/
struct Node *Insert(struct Node * head, int x)
{
struct Node *temp = (struct Node*)malloc(sizeof(struct Node));
temp->data = x;
//if(head != NULL)
temp->next = head;
head = temp;
return head;
}
void Print(struct Node *head)
{
printf("list is :");
while(head != NULL)
{
printf("%d ", head->data);
head = head->next;
}
printf("\n");
}