试题详情
- 简答题编写算法,将一个头指针为head不带头结点的单链表改造为一个单向循环链表,并分析算法的时间复杂度。
-
voidlinklist_c(Lnode*heaD.
{Lnode*p;p=head;
if(!p)returnERROR;
while(p->next!=NULL)
p=p->next;
p->next=head;
}
设单链表的长度(数据结点数)为N,则该算法的时间主要花费在查找链表最后一个结点上(算法中的while循环),所以该算法的时间复杂度为O(N)。 关注下方微信公众号,在线模考后查看
热门试题
- 循环队列是()
- 在一棵二叉树中,若编号为5的结点存在左孩
- 下列广义表是线性表的有()
- 线性表的顺序存储结构和链式存储结构分别称
- 假定查找有序表A[25]中每一元素的概率
- 链队列的存储结构为: struct n
- 邻接矩阵适用于稠密图(边数接近于顶点数的
- 已知一维数组A采用顺序存储结构,每个元素
- 根据插入次序(80,90,100,110
- 试编写算法实现顺序表的逆置,即把顺序表A
- 如果一个有向图不存在(),则该图的全部顶
- 在一个表头指针为ph的单链表中,若要向表
- 数据结构里,队列的特性是先进先出。
- 深度为3的二叉树最多有()个结点。
- 数据结构里,数据类型分为两大类,它们是(
- 线性表是一种典型的()结构。
- 下列选项中不是【正确描述算法的可行性】是
- 抽象数据类型的是什么?它有什么特点?
- 循环队列sq中,用数组elem[0‥25
- 设有两个串S1和S2,求串S2在S1中首