链表反转

来源:互联网 发布:linux 增加tmp大小 编辑:程序博客网 时间:2024/04/29 12:29

CS笔试面试中非常经典的一道题,被考到过多次了。完整的实现如下代码:

  

需要注意的是:在把curNode反转指向其前面一个结点之后,也就是curNode->next = preNode之后,那么curNode与nextNode之间的链接关系就断开了。因此在curNode->next = preNode之前,需要把curNode后面的一个结点保存下来,否则就无法对结点进行循环后移。

另外,上述代码已经包含把链表数据输出到文件的操作。对应函数为:ouputList(linkList head, fstream fout);可以给以后的文件操作提供参考

以上代码在VC6.0环境中编译通过。

原创粉丝点击