首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
两个整数序列A=a1,a2,a3,…,am和B=b1,b2,b3,…,bn已经存入两个单链表中,设计一个算法,判断序列B是否是序列A的子序列。
两个整数序列A=a1,a2,a3,…,am和B=b1,b2,b3,…,bn已经存入两个单链表中,设计一个算法,判断序列B是否是序列A的子序列。
admin
2017-01-04
49
问题
两个整数序列A=a
1
,a
2
,a
3
,…,a
m
和B=b
1
,b
2
,b
3
,…,b
n
已经存入两个单链表中,设计一个算法,判断序列B是否是序列A的子序列。
选项
答案
typedef struct LNode{ int data; struct LNode * next; }*Linkedlist; int Pattern(LinkedList A,B){ //A和B分别是数据域为整数的单链表,本算法判断链表B是否是 //链表A的子序列。如是,返回1;否则,返回0,表示失败。 Linkedlist*P,*pre,*q; p=A: //p为链表A的工作指针,本题假定链表A和链表B均无头结点 pre=p; //pre记住每趟比较中链表A的开始结点 q=B: //q是链表B的工作指针 while(p&&q) if(p一>data==q一>data){P=p一>next;q=q一>next; } else{ pre=pre一>next;P=pre; //链表A新的开始比较结点 q=B: //q从链表B第一结点开始 if{q==null)return(1); //链表B是链表A的子序列 else return(0); //链表B不是链表A的子序列 } }//算法结束 提示:本题实质上是一个模式匹配问题,这里匹配的元素是整数而不是字符。因两整数序列已存入两个链表中,操作从两链表的第一个结点开始,若对应数据相等,则后移指针;若对应数据不等,则链表A从上次开始比较结点的后继开始,链表B仍从第一结点开始比较,直到链表B到尾表示匹配成功。链表A到尾链表B未到尾表示失败。操作中应记住链表A每次的开始结点,以便下趟匹配时好从其后继开始。
解析
转载请注明原文地址:https://kaotiyun.com/show/qhRi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
简述雅尔塔体系的内容和影响。
中国第一个资产阶级革命团体兴中会建立的时间是()。
开皇三年,隋文帝下令州县官吏根据户籍簿上登记的年龄,来核对本人体貌,以防诈老诈小逃避租役,是为()。
三大战役的先后顺序是()
“瓜步之战”发生在下列哪两个政权之间?()
院系调整
“两个凡是”
中共八届九中全会提出的恢复和调整国民经济的方针是()。
1950年,人民政府开始全面调整工商业,采取了对私营工商业的加工订货、向农民收购土副产品、用协商方式解决劳资纠纷等措施。这些措施的主要任务是()
简述“事实判断、成因判断和价值判断”三者的相互关系。
随机试题
女性,25岁,近年来难于控制反复持续地服用一种药,药量不断增加,不服或减少服用量则感痛苦难忍,因而无法停服该种药物该病人应考虑疾病是
胃小弯溃疡合并出血的最佳手术方式为
根据《选举法》和相关法律的规定,关于选举的主持机构,下列哪一选项是正确的?(2016年卷一24题)
应当在基坑底普遍进行轻型动力触深的情形有()。
乳牙滞留是指()。
我国社会主义现代化建设的战略任务是()
Thesoftwarearchitectureisasetofsoftwarecomponents,subsystems,relationships,interactions,thepropertiesofeachoft
在以下字符中,其ASCII码值最小的一个是()。
A、 B、 C、 B图片A是小提琴,图片B是钢琴,图片C是萨克斯。
A、 B、 C、 C
最新回复
(
0
)