在对链表进行各种操作时,需要先对某一个结点进行查询定位。假设链表中没有数据相同的结点,我们可以编写这样一个函数,查找到链表中符合条件的结点:(程序9.6.2)
- 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
- }