数据结构与算法杀我,真的,虽然知道数据结构与算法真的很重要,但也太晦涩难懂了,思路很简单,用c语言写代码✍🏻实现可真是太难了,看代码都能给我整够呛。
今天看了老韩的java基础教学,讲的很细,不过我有c语言和Python基础了,看了看java的介绍,就直接跳到了java的类与对象。我现在该多敲敲代码去熟悉java吧。
单链表基础:
-
1.malloc函数
原型:(void *) malloc (int size);malloc函数分配一个int整型大小的空间,然后返回一个void类型的指针,要用一个指针接受返回值(这个空间的地址)。
所以*L = (LinkList) malloc (sizeof(Node));//L为整个线性表
p = (LinkList) malloc (sizeof(Node));//这是定义了一个p结点,
这俩式子区别在于L前多一个 * ?。为啥一个结点一个是表。:先创建一个大小为Node(结点)的空间,返回这块内存的首地址,强制转换成LinkList类型后赋值给指针*L,*L成了头结点,L就是整个线性表(书上这么说的)
LinkList B;//定义指向结构体的指针变量
然后书上还定义了两个LinkList类型的指针p和r,用p和r循环来创建单链表 。r指向链表的表尾。