下学期就要大三,还真的是很快呀!准备报考深圳大学的计算机专业,本人不是科班出身的。今天开始复习数据结构吧!
下面是我的一些个人复习总结,献丑了,有错的请留言指出,十分感谢赏脸了!
链表的创建
一些基本的操作
附上个人的链表创建代码(C语言)
#include <stdio.h>
#include <stdlib.h>
/*创建节点的数据类型*/
struct stu
{
int num;
char name[10];
struct stu*next;
};
typedef struct stu List;
/*
函数功能:传入节点个数,创建链表,返回头指针
*/
List* createlink(int n)
{
List*h,*p1,*p2;
int i;
int m=n-1;
h=(List*)malloc(sizeof(List));
h->next=NULL;
p1=h;
printf("请输入第1个学生的学号:");
scanf("%d",&h->num);
printf("请输入第1个学生的姓名:");
scanf("%s",&h->name);
for(i=0;i<m;i++)
{
p2=(List*)malloc(sizeof(List));
printf("请输入第%d个学生的学号:",i+2);
scanf("%d",&p2->num);
printf("请输入第%d个学生的姓名:",i+2);
scanf("%s",&p2->name);
p1->next=p2;
p2->next=NULL;
p1=p2;
}
return h;
}
/*main函数,作为测试用的*/
void main()
{
List*p;
int n=0;
int i=1;
printf("请输入学生个数:");
scanf("%d",&n);
p=createlink(n);
while(p)
{
printf("第%d个学生的学号为:%d,姓名为:%s",i,p->num,p->name);
p=p->next;
i++;
printf("\n");
}
}
有图有真相