用带头指针的单循环链表实现队列和用带尾指针的单循环链表实现队列,哪种方法更好?

如题所述

尾指针。
头指针的话,虽然出队列只要一步操作,但入队列操作需要先遍历到尾部,再插入新结点,复杂度是O(n)。
尾指针的话,入队列只要直接在尾部插入新结点即可,出队列也只要把尾结点的next指向下一个结点即可。两种操作都是O(1)复杂度。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-12-23
这要看你的链表是怎么构成的,如果是用“头插法”,那么用带为指针的跟方便,他直接实现的队列的先进先出的原则。而用“尾插法”,则代带指针的单循环链表好。
第2个回答  2011-12-23
正如tanyuguo所说,单循环链表实现队列的出列操作的复杂度过高,因此推荐用带头指针的双向循环链表实现队列操作。前几天已经写过了,但代码不在身边。本回答被提问者采纳
相似回答