数据结构链表的问题

来源:百度知道 编辑:UC知道 时间:2024/05/17 06:09:00
设带头单链表L中有N个结点,现将其改为带头单循环链表,其修改过程的时间复杂度为多少?
我认为是O(N),过程是找到尾结点,再让尾结点的NEXT指针指向头结点。
对吗???

时间复杂度应该是O(n)。

但:“带头结点的单链表”。头结点不属于链表元素,是链表本身的一部分。
头结点的NEXT才是链表里有实际意义的第一个结点。

操作应该是:先找到尾结点,再让尾结点的NEXT等于头结点的NEXT。

的确是这样的,需要遍历一次找到最后的节点,并用指针指向它,而后修改该指针就可以了,而遍历的时间复杂度就是O(n)