当前位置: 首页 > 知识库问答 >
问题:

单链表时间

康烨伟
2023-03-14

给定一个单链表,其中包含一个指向头部的指针,一个指向尾部的指针。哪一个最费时?

>

  • 在开头插入节点

  • 共有1个答案

    端木承业
    2023-03-14

    删除末尾节点:需要遍历所有链表,因为它需要更新第二个最后一个节点,以更新下一个指针为空。

     类似资料:
    • 在今天的一次采访中,我被问到了这个问题。 除了回答倒序和前后遍历外,面试官还不断强调其中的一些“基本点”。我放弃了,当然在面试后做了一些调查。在双链表中插入和删除似乎比单链表更有效。我不太清楚如何才能更有效地使用双链接列表,因为显然需要更改更多的引用。有人能解释背后的秘密吗?老实说,我做了相当多的研究,但未能理解我的主要问题是,仍然需要对双链接列表进行O(n)搜索。

    • 单向链表 结构体 struct   rt_slist_node   单向链表节点 更多...   宏定义 #define  rt_slist_entry(node, type, member)   rt_container_of(node, type, member)   获取单向链表节点的数据结构   #define  rt_slist_for_each(pos, head)   for (po

    • 如果你想创建一个像这样的单链表: 这个列表有方法“追加”、“删除”、“printList”和“findElement”。有必要有尾巴吗?因为使用“最后”你可以地址最后一个节点。 那么,什么时候有必要拥有所有三个节点“头”、“尾”和“最后”?例如,当您想将排序的节点插入列表时?

    • 我在做单链表实现,我记得Linus Torvalds在这里谈到过。 在单链表中,为了删除节点,我们应该可以访问上一个节点,然后更改它当前指向的节点。 因此,无论如何,我们都应该可以访问上一个节点。 但是Linus Torvalds通过在C中使用地址的概念删除了这个特例。因此head也有“前面的东西”,即指向head的head的地址。因此,他使用了C的指针和地址特性来删除特殊情况。 我认为这种单链表

    • 本文向大家介绍data-structures 单链表,包括了data-structures 单链表的使用技巧和注意事项,需要的朋友参考一下 示例 单链列表是链列表的一种。单个链接列表的节点只有一个指向另一个节点的“指针”,通常是“下一个”。之所以称为单链接列表,是因为每个节点只有一个指向另一个节点的“指针”。单链表可以具有头和/或尾参考。具有尾部参考的优点是getFromBack,addToBac

    • 我有下面的程序来反转单链表中的元素。我不能让它工作。我使用了简单的变量交换技术来交换节点,但当我打印时,它不会超出第一个节点。