首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
单链表L是一个带有头结点的有序链表,设计一个算法判断L是否为按数值递减的链表。如果L是递减链表,那么就返回1,否则返回0。请回答下列问题: (1)给出算法的主要思想; (2)写出算法的实现函数; (3)总结所用算法的时间和空间复杂度。
单链表L是一个带有头结点的有序链表,设计一个算法判断L是否为按数值递减的链表。如果L是递减链表,那么就返回1,否则返回0。请回答下列问题: (1)给出算法的主要思想; (2)写出算法的实现函数; (3)总结所用算法的时间和空间复杂度。
admin
2014-07-18
77
问题
单链表L是一个带有头结点的有序链表,设计一个算法判断L是否为按数值递减的链表。如果L是递减链表,那么就返回1,否则返回0。请回答下列问题:
(1)给出算法的主要思想;
(2)写出算法的实现函数;
(3)总结所用算法的时间和空间复杂度。
选项
答案
(1)遍历链表L,将前后两个结点的数值依次作比较,判断链表是否为递减的,如果是就返回1,不是就返回0。 (2)算法的实现过程如下: #include“stdio.h” int increase(LinkList*L) { int min; //记录链表中的最小值 LinkList *P,*q;//辅助指针 P=L->next: if(P) min=P->data;//因为链表带头结点 q=P->next: while(q!=null){ if(q->data>min) //当前元素的值大于其相邻的前一个元素的值,则不为降序 return 0; else{ min=q->data; //修改最小值 q=q->next; //指针后移 } } return 1: } (3)遍历链表的时间复杂度为O(n),算法实现过程中使用的辅助空间为常量,空间复杂度为O(1)。
解析
转载请注明原文地址:https://www.kaotiyun.com/show/Iaxi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
论述十字军运动(十字军东征)发生的背景、过程及其影响。
第一国际开展了哪些活动?其内部经历了哪些主要斗争?
下列关于农耕世界与游牧世界文明特征的叙述中,不正确的是()。
从鸦片战争的过程和结局可以看出,()是决定战争胜败的关键。
下列历史事件发生的先后顺序是()①“铁幕”演说②马歇尔计划③北大西洋公约
重庆谈判的焦点问题是()
在民主革命取得全国性胜利并完成土地革命后,中国国内存在的主要矛盾是()。
最早测量子午线的长度,并主持修订了当时最先进历法《大衍历》的是僧人()。
论述欧洲一体化的进程及影响。
唐顺宗时,以王叔文、王侄为首的朝臣与宦官之间发生的冲突,称为()。
随机试题
从()的角度来看,原油稳定方法中的精馏法比提馏法好。
民族问题与阶级问题的联系与区别。
描述数据集中趋势的统计值有()
设f(x)=1/x,则f[f(x)]=_______.
患者,男,24岁,受严重创伤后,血压下降,脉搏细速,面色苍白,诊断为休克,治疗时重点应注意
基础的埋深,主要受()等因素的影响。
非法设立期货公司或其他期货经营机构或者擅自从事期货业务的予以取缔没收违法所得并处违法所得l倍以上5倍以下罚款,没有违法所得或者违法所得小于20万元的应当处以()罚款。
TheFamilyThestructureofafamilytakesdifferentformsaroundtheworldandeveninthesamesociety.Thefamily’sform
有些学生虽然知道道德规范,也愿意遵守,但却受个人欲望的支配,不可抗拒诱惑因素,结果干出了违反道德规范的事,其主要原因是这些学生()。
为了保护数据库,需要减少授权用户给入侵者提供访问机会的可能性。这属于数据库安全性措施的哪一层?
最新回复
(
0
)