首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
设有一个双链表L,每个结点中除有prior、data和next这3个域外,还有一个访问频度域freq,在链表被启用之前,其值均初始化为零。每当在链表进行一次LocateNode(L,x)运算时,令元素值为x的结点中freq域的值加1,并调整表中结点的次序,
设有一个双链表L,每个结点中除有prior、data和next这3个域外,还有一个访问频度域freq,在链表被启用之前,其值均初始化为零。每当在链表进行一次LocateNode(L,x)运算时,令元素值为x的结点中freq域的值加1,并调整表中结点的次序,
admin
2017-01-04
78
问题
设有一个双链表L,每个结点中除有prior、data和next这3个域外,还有一个访问频度域freq,在链表被启用之前,其值均初始化为零。每当在链表进行一次LocateNode(L,x)运算时,令元素值为x的结点中freq域的值加1,并调整表中结点的次序,使其按访问频度的递减排列,以便使频繁访问的结点总是靠近表头。试写一符合上述要求的LocateNode运算的算法。
选项
答案
typedef struct DuLNode{ ElemType data; int freq; struct DuLNode*pred,*next; }*DList; DList locate(DList L,ElemType x){ //L是带头结点的按访问频度递减的双向链表 DList p=L一>next,q; //p为L表的工作指针,q为P的前驱,用于查找插入位置 while(P&&p一>data!=x)p=p->next; //查找值为x的结点 if(!P){printf(”不存在所查结点\n”);exit(0);} else{ p一>freq++; //令元素值为x的结点的freq域加l p一>next一>pred=p一>pred; //将P结点从链表上摘下 p一>pred一>next=p一>next: q=p一>pred; //以下查找P结点的插入位置 while(q |=L&&q一>freq<p一>freq)q=q一>pred: p一>next=q一>next; q一>next一>pred=P;//将P结点插入 p一>pred=q;q一>next=p; } return(P); //返回值为x的结点的指针 } 提示:在算法中先查找数据x,查找成功时结点的访问频度域增1,最后将该结点按频度递减插入链表中。
解析
转载请注明原文地址:https://kaotiyun.com/show/ihRi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
中世纪战争史上有过两次君士坦丁堡陷落,分别简述其发生的时间、征战的双方、导致的历史变动。(华东师范大学2003年世界通史真题)
谈谈宗法制的内容和作用。
简述大化改新的内容并对其评价。
1901年6月,发表《立宪法议》,首先提出君主立宪要求的是()。
法国里昂工人起义提出:“我们只有一个口号‘人人自由平等!’”英国宪章运动请愿书提出:“我们竭尽自由人的义务,就应享受自由人的权利。我们要求普遍选举。”这些要求表明()。①带有空想社会主义色彩②当时工人的要求还没有超出资产阶级民主主义的范畴
1950年,人民政府开始全面调整工商业,采取了对私营工商业的加工订货、向农民收购土副产品、用协商方式解决劳资纠纷等措施。这些措施的主要任务是()
在一个长度为n(n>1)的带头结点的单链表h上,设有尾指针r(指向尾结点),则执行()操作与链表的长度有关。
循环队列用数组A[0..m~1]存放其元素值,已知其头尾指针分别为front和rear,则当前元素个数为()。
已知一个带有表头结点的单链表,结点结构为:假设该链表只给出了头指针list。在不改变链表的前提下,请设计一个尽可能高效的算法,查找链表中倒数第k个位置上的结点(k为正整数)。若查找成功,算法输出该结点的data域的值,并返回1;否则,只返回0。要求:
随机试题
根据领导生命周期理论,护士长对于非常有经验的护士应该采取的领导行为是
甲委托乙购买一套机械设备,但要求以乙的名义签订合同,乙同意,遂与丙签订了设备购买合同。后由于甲的原因,乙不能按时向丙支付设备款。在乙向丙说明了自己是受甲委托向丙购买机械设备后.关于丙的权利,下列哪一选项是正确的?(2008年卷三第3题)
地下工程施工阶段主要的工作内容有()。
“开始”菜单的选项中如果右边有黑色三角形表示该项有下级菜单。()
通过协议转让方式,投资者及其一致行动人在一个上市公司中拥有权益的股份拟达到或者超过一个上市公司已发行股份的5%时,应当在该事实发生之日起( )日内编制权益变动报告书,向中国证监会、证券交易所提交书面报告,抄报派出机构,通知该上市公司,并予公告。
根据社会保险法的规定,下列人员应当认定为工伤的有()。
通过破译敌人的密码,已经知道“香蕉苹果大鸭梨”的意思是“星期三秘密进攻”,“苹果甘蔗水蜜桃”的意思是“执行秘密计划”,“广柑香蕉西红柿”的意思是“星期三的胜利属于我们”。那么,“大鸭梨”的意思是()
A.apparentlyB.part-writtenC.treatsD.workE.securedF.supplyG.fully-writtenH.successI.allegeJ.growthK.
AllsummerlongIhavebeendreamingofextravagantusesofwater.Idonotjustmeangallonsofwaterleakingfromthepipesof
SevenWaystoCreateaHappyHouseholdA)Everyfamilyisdifferent,withdifferentpersonalities,customs,andwaysofthink
最新回复
(
0
)