若在单向链表上,除访问链表中所有结点外,还需在表尾频繁插入结点,那么采用( )

admin2022-08-02  30

问题 若在单向链表上,除访问链表中所有结点外,还需在表尾频繁插入结点,那么采用(  )最节省时间。A.仅设尾指针的单向链表B.仅设头指针的单向链表C.仅设尾指针的单向循环链表D.仅设头指针的单向循环链表

选项 A.仅设尾指针的单向链表
B.仅设头指针的单向链表
C.仅设尾指针的单向循环链表
D.仅设头指针的单向循环链表

答案 C

解析 单向链表仅设头指针时,在表尾插入结点时需要遍历整个链表,时间复杂度为o (n),仅设尾指针时,在表尾插入结点的时间复杂度为O (1),但是不能访问除了尾结点之外的所有其他结点。而单向循环链表仅设头指针时,在表尾插入结点时需要遍历整个链表,时间复杂度为0(n),仅设尾指针时,在表尾插入结点的时间复杂度为0(1),同时达到表头结点的时间复杂度为0(1),因此对于题中给出的操作要求,适合采用仅设尾指针的单向循环链表。
转载请注明原文地址:https://tihaiku.com/congyezige/2425004.html

最新回复(0)