有一个带头节点的单链表L,用于存放整数序列,设计一个算法判断该序列是否是对称的。

如题所述

弄一个整型的辅助栈
第一轮从链表的第一个结点开始,将所有元素全部放入栈中
第二轮再从链表的第一个结点开始,依次将元素和当前栈顶元素相比较,
如果相等,则链表当前结点后移,删除栈顶元素
直到栈为空(其实也是链表表尾了),此时为对称
如果中间不等,结束循环,链表不对称追问

可否编个代码看下?

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-12-23
递增的话,重复的节点都是相邻的,只要从头到尾扫描一遍,删除重复的就可以了,时间复杂度O(n)追问

编个代码看先

相似回答