链表的介绍
数组就像容器,它的大小是不可调节的,链表的出现解决了这个问题,它将一个容器分解成若干个小容器,每一个小容器放入合适大小的元素,然后根据需要将它们链接起来,这些若干个小容器我们v把它叫做节点,通常它们都是按顺序排列的,排列在第一位的那个容器我们叫它头结点,最后一位的叫尾节点,每个容器除了放你要放置的东西外,还会放置下一个容器的地址,我们可以根据这个地址一次找到所需的容器
代码示例
1 #include <iostream> 2 using namespace std; 3 struct book 4 { 5 int num; 6 float price; 7 struct book *next; 8 }; 9 int main() 10 { 11 book x, y, z, *head, *p; 12 x.num = 10000; 13 x.price = 11.2f;//数字后面不加f的话,编译器会默认为double型变量,会有警告 14 y.num = 20000; 15 y.price = 22.4f; 16 z.num = 30000; 17 z.price = 33.6f; 18 head = &x; 19 x.next = &y; 20 y.next = &z; 21 z.next = NULL; //将尾指针赋值为空指针 22 p = head; 23 while (p!=NULL) 24 { 25 cout << p->num << endl << p->price << endl; 26 p = p->next; 27 } 28 return 0; 29 }
结果演示