问答题
用单链表保存m个整数,结点的结构为:[dlata][link],且|data|≤n(n为正整数)。现要求设计一个时间复杂度尽可能高效的算法,对于链表中data的绝对值相等的结点,仅保留第一次出现的结点而删除其余绝对值相等的结点。例如,若给定的单链表head如下:
则删除结点后的head为:
要求: 说明你所设计算法的时间复杂度和空间复杂度。
【参考答案】
正确答案:算法的时间复杂度为O(m),空间复杂度为O(n)。
点击查看答案
<上一题
目录
下一题>
热门
试题
问答题
根据设计思想,采用C或C++语言描述算法,关键之处给出注释。
点击查看答案
问答题
使用C或C++语言,给出单链表结点的数据类型定义。
点击查看答案
相关试题
求下面带权图的最小(代价)生成树时,可能...
下列选项给出的是从根分别到达两个叶结点路...
已知程序如下:int S(int n){return(...
现有一棵无重复关键字的平衡二叉树(AVL树...
先序序列为a,b,c,d的不同二叉树的个数是...