指针与动态数据结构:链表、栈和队列的实现与操作
1. 链表基础操作
在处理链表时,我们需要掌握一些基本的操作,如创建链表、遍历链表、查找元素等。
1.1 创建链表
以下是一段创建链表的代码示例:
scalep = (scale_node_t *)malloc(sizeof (scale_node_t));
scanf("%s", scalep->note);
prevp = scalep;
for (i = 0; i < 7; ++i) {
newp = (scale_node_t *)malloc(sizeof (scale_node_t));
scanf("%s", newp->note);
prevp->linkp = newp;
prevp = newp;
}
prevp->linkp = NULL;
这段代码的操作步骤如下:
1. 首先,为 scalep
分配内存,用于存储第一个节点。
2. 从用户输入读取数据到 scalep->note
。
3. 将 prevp
指向 scalep
。
4. 使用 for
循环创建 7 个新节点:
- 为 newp
分配内存。
- 从用户输入读取数据到 newp->note
。