链表的强项是插入删除很方便,但是搜索效率相对于结构体数组来说很差(链表每次都得从头开始查找),结构体的强项就是查询,插入删除的效率相对于链表来说很低(结构体每次插入其后的元素都得向后移一位)
结构体是几种数据类型的集合
struct{int a;char b;}
数组是同种类型的连续的集合
链表就是不连续的同种类型的集合
//连续指的是物理上的不连续,就是他在内存的位置是不再一起的
int a[10] a[0]的地址是0x00001的话,a[1]就是0x00002
链表就不行了
数组定义简单,以连续的变量形式储存,不可以减少或添加任何变量,因此在定义时必须已知长度,可能造成数组不够长或内存浪费的情况; 链表以结构体的自引用为原理,可以在内存中以不连续的方式储存,并动态分配内存,即随时加入或删除一个变量。...
指针 动态数组