已知带头结点的动态单链表L中的结点是按整数值递增排序的,编写算(2)
LinkList1 a=A,b=B,c=C;
int a1=0,b1=0,c1=0;
while ( p )
{
if (strcmp( p->data,"a")>=0 &&strcmp(p->data,"z")<=0||strcmp( p->data,"A")>=0 &&strcmp(p->data,"Z")<=0)
{
a1++;
q=p; //保存字母结点位置
p=p->next;
a->next=q;
q->next=A->next;// 形成循环链表
a=a->next;
}
else if(strcmp( p->data,"0")>=0 &&strcmp( p->data,"9")<=0)
{
b1++;
q=p;
p=p->next;
b->next=q;
q->next=B->next;
b=b->next;
}
else
{
c1++;
q=p;
p=p->next;
c->next=q;
q->next=C->next;
c=c->next;
}
}
//a=A->next;b=B->next;c=C->next;
cout<<"分离出含字母的链表部分:"<<endl;
while(a1--)//一开始写成没用a1计数,while(a)当然死循环了,因为它是循环链表啊!
{
cout<<a->data<<" ";
a=a->next;
}
cout<<endl;
cout<<"分离出含数字的链表部分:"<<endl;
while(b1--)
{
cout<<b->data<<" ";
b=b->next;
}
cout<<endl;
cout<<"分离出含除字母与数字外的链表的其他部分:"<<endl;
while(c1--)
{
cout<<c->data<<" ";
c=c->next;
}
cout<<endl;
}
//*********************************双向链表的初始化*********10/6********************************************
Status InitList_D(LinkList1 &L){
L=new LNode1;
L->next=L->prior=NULL;
return 1;
}
//*********************************创建双链表***************10/6~10/7************************************************
void CreateList_D(LinkList1 &L,int &n)
{
LinkList1 p,q;
L = new LNode1;
p = L;
for(int i = 1;i <=n;i++) {
q = new LNode1;
cin >> q->data;
q->freq =1;
q->next=NULL;
p->next = q;
q->prior = p;
p = q;
}
}
//*********************************访问频度排序***********10/6~10/7*********************************************
void LOCATE(LinkList1 &L,ElemType1 x,int n)
{
LinkList1 p=L->next,q=L->next;
while(p)
{
if(strcmp(p->data,x)!=0)
p=p->next;
else
{
p->fr
eq++;
//cout<<p->freq<<endl;
break;
}
}
while(q)
{
if(q->freq > p->freq)
{
q=q->next;
}
else if(p==q)
有两个按元素值递增有序的线性表A和B以单链表作存储结构,试编写算法将A表和B表归并成一个按元素值递减有序的线性表C长度大于1的单循环链表中编写算法删除结点*s的直接前驱结点。单链表线性表中含有三类字符的数据构造三个以循环链表示的线性表,使每一个表中只含同一类的字符有一双链表,每个结点中除有prior、data和next域外,还有一访问频度域freq每当在链表上进行一次LOCATE(L,x)运算,元素值为x的结点中freq域的值增1
break;
else
{
p->prior->next=p->next;//摘下
if(p->next)
p->next->prior=p->prior;
p->prior=q->prior;//插入
q->prior->next=p;
p->next=q;
q->prior=p;
break;
}
}
cout<<"按访问频度由大到小排序后链表中元素顺序为"<<endl;
p=L->next;
for( int i=1;i<=n;i++)
{
cout<<p->data<<" ";
p=p->next;
}
}
//********************************菜单****9/30*********************************************************
void caidan()
{
printf("\n请选择菜单:\n");
printf("\t\t\t1 创建链表\n");
printf("\t\t\t2 插入元素(在1创建的链表中插入)\n");
printf("\t\t\t3 逆置链表\n");
printf("\t\t\t4 合并链表\n");
printf("\t\t\t5 删除前驱结点\n");
printf("\t\t\t6 分离链表中相同属性元素\n");
printf("\t\t\t7 访问频度排序\n");
printf("\t\t\t0 退出系统\n");
}
//*********************************主函数***********************************************************
int main()
{
LinkList head=NULL;
LinkList head1=NULL;
LinkList head2=NULL;
LinkList1 head3=NULL;
LinkList1 A=NULL,B=NULL,C=NULL;
int n,m,k;
ElemType e;
ElemType1 x;
caidan();
do{
scanf("%d",&m);
switch(m)
{
case 1:
system("cls");
cout<<"请输入链表中元素个数:"<<endl;
cin>>n;
InitList_L(head);
cout<<"请按递减顺序依次输入元素:"<<endl;
CreateList_L(head, n);
break;
case 2:
system("cls");
cout<<"请输入您要插入的元素:"<<endl;
cin>>e;
ListIsert_L(head,n,e); break;
case 3:
system("cls");
cout<<"逆置后链表中元素为:"<<endl;
nizhi(head,n); break;
case 4:
system("cls");
cout<<"请输入a链表中元素个数:"<<endl;
cin>>n;
InitList_L(head1);
cout<<"请按递减顺序依次输入元素:"<<endl;
CreateList_L(head1, n);
//system("cls");
cout<<"请输入b链表中元素个数:"<<endl;
cin>>n;
InitList_L(head2);
cout<<"请按递减顺序依次输入元素:"<<endl;
CreateList_L(head2, n);
cout<<"合并后链表中按递减顺序存储的元素为:"<<endl;
MergeList_L(head1,head2,head);
break;
case 5:
system("cls");
deletes();
break;
case 6:
system("cls");
InitList_L1(head3);
InitList_L
…… 此处隐藏:2191字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [教学研究]2012西拉科学校团少队工作总结
- [教学研究]建筑工程公司档案管理制度
- [教学研究]小学数学人教版六年级上册圆的周长和面
- [教学研究]ERP电子行业解决方案
- [教学研究]钢支撑租赁合同范本
- [教学研究]预应力自动张拉系统用户手册Rev1.0
- [教学研究]MOOC课程:金瓶梅人物写真(每章节课后
- [教学研究]追加被执行人申请书(适用追加夫妻关系)
- [教学研究]2014年驾考科目一考试最新题库766
- [教学研究]2013-2014学年度九年级物理第15章《电
- [教学研究]新版中日交流标准日本语初级下26课-客
- [教学研究]小导管注浆施工作业指导书
- [教学研究]一般财务人员能力及人岗匹配评估表
- [教学研究]打1.2.页 小学一年级暑假口算100以内加
- [教学研究]学习贯彻《中国共产党党和国家机关基层
- [教学研究]2012年呼和浩特市中考试卷_35412
- [教学研究]最简易的电线电缆购销合同范本
- [教学研究]如何开展安全标准化建设
- [教学研究]工作分析与人岗匹配
- [教学研究]2016-2017学年高中历史第七单元现代中
- 山东省义务教育必修地方课程小学三年级
- 台湾宜兰大学互联网交换技术课程 01_In
- 思想品德:第一课《我知我家》课件(人
- SAR合成孔径雷达图像点目标仿真报告(附
- 利辛县“十三五”规划研究报告
- 2015-2020年中国手机APP行业市场发展趋
- 广告策略、创意表现、媒体方案
- 企业如何申请专利的的几点思考
- 《中国教育简史》网上作业
- 高中历史第二单元西方人文精神的起源及
- 年终晚会必备_精彩的主持稿_精心整理_
- 信息工程专业自荐书
- 2019高考历史人教版一轮练习:第十二单
- JAVA俱乐部管理系统软件需求规格说明书
- 2016-2021年中国小型板料折弯机行业市
- (人教新课标)六上_比的基本性质课件PPT
- 辽宁省公务员考试网申论备考技巧:名言
- 神经阻滞麻醉知情同意书
- 施工企业信息填报、审核和发布的相关事
- 初一(七年级)英语完形填空100篇




