数据结构有顺序存储和链式存储两种存储方式。顺序存储的数组可以使用下标随机访问,但插入操作比较麻烦,且需要整块的内存,另外数组大小需要事先确定而缺乏灵活性。STL支持的list兼有顺序存储和链式存储的优点。自定义链式存储的链表需要自定义创建、插入、查询、删除、清除等函数。
在一个链表中查询一个节点的要点:
在一个链表中查询一个节点的动画演示:
在一个链表中查询一个节点的代码:
附代码:
node * Search(node *head,char keyWord) //返回结点的指针 { node *pRead=head; while (pRead!=NULL) //采用与遍历类似的方法,当访问指针没有到达表尾之后 { if (pRead->data==keyWord) //如果当前结点的数据和查找的数据相符 { return pRead; //则返回当前结点的指针 } pRead=pRead->next; //数据不匹配,pRead指针向后移动,准备查找下一个结点 } return NULL; //所有的结点都不匹配,返回NULL }
-End-