首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
设有一个双向链表h,每个结点中除有prior,data和next三个域外,还有一个访问频度域freq,在链表被起用之前,每个结点中的freq域都被初始化为零。每当进行LocateNode(h,x)运算时,令元素值为x的结点中freq域中的值加一,并调整表中
设有一个双向链表h,每个结点中除有prior,data和next三个域外,还有一个访问频度域freq,在链表被起用之前,每个结点中的freq域都被初始化为零。每当进行LocateNode(h,x)运算时,令元素值为x的结点中freq域中的值加一,并调整表中
admin
2012-06-21
70
问题
设有一个双向链表h,每个结点中除有prior,data和next三个域外,还有一个访问频度域freq,在链表被起用之前,每个结点中的freq域都被初始化为零。每当进行LocateNode(h,x)运算时,令元素值为x的结点中freq域中的值加一,并调整表中结点的次序,使其按访问频度的递减序列排序,以便使被频繁访问的结点总靠近表头,试写一符合上述要求的LocateNode运算的算法。
选项
答案
在DLinkList类型的定义中添加freq域(int类型),给该域初始化为0。在每次查找到一个结点*p时,使其freq域增1,再在*p结点的前面找到一个结点*q,它或是头结点或是满足q->freq>=p->freq,然后删除*p结点,使其插入到*q结点之后。 算法描述如下: int LocateNode(DLinkList*h,ElemType x) { DLinkList *p=h->next,*q; while(p!=NULL&&p->data!=x) p=p->next; //找data域值为x的结点*p if(p==NULL) //未找到这样的结点 return 0: }else{ //找到这样的结点*p p->freq++; //频度增1 q=q->prior; //*q为*p前驱结点 if(q!=h) //若’p为第一个数据结点,则不移动 { while(q!=h&&q->freq<p->freq)//找到*q结点,使q->freq>=p->freq q=q->prior; p->prior->next=p->next; //先删除*p结点 if(p->>next!=NULL) p->next->prior=p->prior; p->next=q->next; //将*p结点插入到*q结点之后 if(q->next!=NULL) q->next->prior=p; q->next=p; p->prior=q; } return 1; } }
解析
转载请注明原文地址:https://kaotiyun.com/show/Y8xi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
下列对凡尔赛和约中有关德国疆界问题的表述,正确是()。
1945年,在美国国务院举行了布雷顿森林协定签字仪式,宣告了()和()的正式成立。这是两个在业务上保持密切联系的姊妹机构,总部均设在华盛顿。
利玛窦与李之藻合译的()一书,介绍了西方数学中的算术知识,尤为可贵的是,其传入了中国所没有的西洋笔算法。
评述欧洲一体化的历史进程。(华东师范大学1998年世界当代史真题)
《马可波罗行纪》中载:“此汗八里大城之周围,约有城市二百,位置远近不等,每城皆有商人来此买卖货物,盖此城为商业繁荣之城也。”“此城”指的是()。
周人重视婚姻,对婚礼尤为讲究。周代的婚礼有六项程序,即:①纳征②问名③纳采④请期⑤亲迎⑥纳吉下列选项顺序排列正确的是()
与前两次工业革命相比,第三次科技革命在能源结构上的主要变化是()
科学技术革命包括三个既有联系又有区别的过程,下列不属于三个过程的是()。
设磁盘的扇区大小为4KB,磁盘转速为15000r/min,磁盘平均寻道时间为4ms,最大数据传输速率为40MB/s,磁盘控制器开销时问为1ms,计算读写一个扇区所需平均时间(不考虑I/O请求队列中的等待时间)。
序列的“中值记录”指的是:如果将此序列排序后,它是第n/2个记录。试写出一个求中值记录的算法。
随机试题
与企业紧密相联,直接影响企业营销能力的各种参与者,被称为()。
报刘一丈书。报:
某男性工人,接尘工龄21年,主诉轻度运动后即感呼吸困难,体温正常,无明显咳痰,诊断工期石棉肺半年。如进行肺通气功能检查,其特征性改变是
流行病学实验的主要用途没有
A、颈段脊柱B、胸段脊柱C、颈胸脊柱D、骶段脊柱E、腰段脊柱脊柱后凸多发生于
在综合布置地下管线产生矛盾时,关于避让原则,下列说法错误的是()。
现代物流职业道德建设应重点从()和行为规范两个层面来开展。
根据以下资料,回答下列问题。2011年1-9月,全国造船完工5101万载重吨,同比增长18.3%,9月当月完工786万载重吨,环比增长67.2%,新承接船舶订单规模2902万载重吨,同比下降42.8%,手持船舶订单规模16886万载重吨,同比下降
任何事物的发展都是一个螺旋上升的过程,只有坚持“一张蓝图抓到底”,以夸父逐日的_________、水滴石穿的_________,才能破解转型发展中的顽瘴痼疾。填入划横线部分最恰当的一项是:
从现在到2020年,是全面建成小康社会的决胜期,也是确保实现第一个百年目标、为第二个百年目标打好基础的关键阶段。面对各种严峻复杂的挑战,如期全面建成小康社会必须打好的攻坚战的首要战役是
最新回复
(
0
)