首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
设有一个双链表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
65
问题
设有一个双链表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年世界通史真题)
法国《人权宣言》的主要内容有哪些?
我国对资本主义工商业采取和平赎买的政策内容和成功意义。
谈谈宗法制的内容和作用。
全国高校院系调整的具体时间是()。
中共八届九中全会提出的恢复和调整国民经济的方针是()。
随机试题
______是数据通信差错控制的理论基础。
王先生把他所持有的某公司的股票赠给了李女士,李女士取得股东资格的方式为()
级数(k为非零正常数)().
在借贷记账法下,企业为检查账户记录是否正确,可以采取发生额试算平衡和余额平衡两种方法。()
某企业2014年初拥有小轿车2辆;当年4月,1辆小轿车被盗,已按照规定办理退税。通过公安机关的侦查,9月份被盗车辆失而复得,并取得公安机关的相关证明。已知当地小轿车车船税年税额为500元/辆,该企业2014年实际应缴纳的车船税为()元。
下列借款合同中,应缴纳印花税的是()。
依据我国现行婚姻法的规定,下列属于可撤销婚姻的是()
设,其中D={(x,y)|x2+y2≤1},则().
CREATEDATABASE命令用来建立( )。
TheModesofLanguageThreemodesoflanguagespeechwriting【T1】______【T1】______Speechandwritingspeechisc
最新回复
(
0
)