数据结构实习题答案Word下载.docx

上传人:b****3 文档编号:14997188 上传时间:2022-10-26 格式:DOCX 页数:21 大小:20.04KB
下载 相关 举报
数据结构实习题答案Word下载.docx_第1页
第1页 / 共21页
数据结构实习题答案Word下载.docx_第2页
第2页 / 共21页
数据结构实习题答案Word下载.docx_第3页
第3页 / 共21页
数据结构实习题答案Word下载.docx_第4页
第4页 / 共21页
数据结构实习题答案Word下载.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

数据结构实习题答案Word下载.docx

《数据结构实习题答案Word下载.docx》由会员分享,可在线阅读,更多相关《数据结构实习题答案Word下载.docx(21页珍藏版)》请在冰豆网上搜索。

数据结构实习题答案Word下载.docx

三、分析过程

四、设计过程

五、实现

六、测试

七、性能分析

范例:

1.约瑟夫环

#defineNULL0

typedefstructNode

{

intbianhao;

intmima;

structNode*next;

}Node;

Node*CreatFromTail(intn)

Node*l,*r,*s;

inti,mima;

l=(Node*)malloc(sizeof(Node));

l->

next=NULL;

r=l;

printf("

inputothermima\n"

);

for(i=1;

i<

=n;

i++)

{

scanf("

%d"

&

mima);

s=(Node*)malloc(sizeof(Node));

s->

bianhao=i;

mima=mima;

r->

next=s;

r=s;

}

next=l->

next;

returnl;

}

DeleNode(intm,intn,Node*l)

inti,j;

Node*p,*q;

p=l;

i=1;

while(i<

=n)

for(j=1;

j<

=m-1;

j++)p=p->

q=p->

p->

next=q->

chuduidrenshi%d,qimimashi%d\n"

q->

bianhao,q->

i++;

m=q->

mima;

free(q);

return;

main()

Node*l;

intm,n;

inputnumberofpeopleandthefirstmima\n"

%d,%d"

n,&

m);

l=CreatFromTail(n);

DeleNode(m,n,l);

2.回文判断

方法1:

#include"

stdio.h"

chara[100],c;

intlen;

inti,j,top;

i=0;

while((c=getchar())!

='

@'

a[i]=c;

for(j=0;

i;

j++)

%c"

a[j]);

top=i-1;

j=0;

while(top>

=0)

if(a[top]!

=a[j])

isnot"

top--;

j++;

is"

方法2:

#defineTRUE1

#defineFALSE0

#definestacksize100

#definequeuesize100

typedefstruct

charelem[queuesize];

intfront,rear;

}sequeue;

charelem[stacksize];

inttop;

}seqstack;

intEnterQueue(sequeue*q,charx)

if((q->

rear+1)%queuesize==q->

front)return(FALSE);

q->

elem[q->

rear]=x;

rear=(q->

rear+1)%queuesize;

return(TRUE);

chardelete(sequeue*q)

charx;

if(q->

rear==q->

x=q->

front];

front=(q->

front+1)%queuesize;

return(x);

intpush(seqstack*s,charx)

if(s->

top==stacksize-1)return(FALSE);

top++;

elem[s->

top]=x;

charpop(seqstack*s)

top==-1)return(FALSE);

else

x=s->

top];

top--;

charc;

intlen1=0,len2=0;

seqstack*s;

sequeue*q;

charx1,x2;

q=(sequeue*)malloc(sizeof(sequeue));

front=q->

rear=0;

&

'

EnterQueue(q,c);

len1++;

s=(seqstack*)malloc(sizeof(seqstack));

top=-1;

push(s,c);

len2++;

if(len1!

=len2)printf("

while(s->

top>

x1=pop(s);

x2=delete(q);

if(x1!

=x2){printf("

3.串操作(92页实习题1)

chars[100],t[100],r[100],c;

inti,j,k,m,len1,len2,len3;

gets(s);

gets(t);

len1=0;

while(s[len1]!

\0'

)len1++;

len2=0;

while(t[len2]!

)len2++;

len3=0;

k=0;

len1)

while((j<

len2)&

(s[i]!

=t[j]))

if(j>

=len2)

r[len3]=s[i];

m=0;

while((m<

len3)&

r[m]!

=r[len3])m++;

if(m==len3)printf("

%czaiszhongshoucichuxiandeweizhishi%d\n"

r[len3],i);

len3++;

for(k=0;

k<

len3;

k++)

r[k]);

string.h"

#defineMaxlen100

typedefstruct{

charch[Maxlen];

}SString;

concat(SString*s,SStringt)

inti,flag;

if(s->

len+t.len<

=Maxlen)

for(i=s->

len;

s->

len+t.len;

ch[i]=t.ch[i-s->

len];

len+=t.len;

flag=1;

elseif(s->

len<

Maxlen)

Maxlen;

len=Maxlen;

flag=0;

elseflag=0;

return(flag);

len(SStrings)

return(s.len);

SubString(SString*sub,SStrings,intpos,intlen)

inti;

if(pos<

0||pos>

s.len||len<

1||len>

s.len-pos)

sub->

len=0;

return(0);

for(i=0;

ch[i]=s.ch[i+pos];

ch[i]='

;

len=len;

return1;

equal(SStrings,SStringt)

if(s.len!

=t.len)return0;

s.len&

t.len;

if(s.ch[i]!

=t.ch[i])return0;

StrIndex(SStrings,intpos,SStringt)

if(t.len==0)return0;

i=pos;

t.len)

if(s.ch[i]==t.ch[j]){i++;

j++;

else{i=i-j+1;

j=0;

=t.len)return(i-j);

elsereturn0;

SStrings,t,x,r={"

"

0};

SString*sub1,*sub2,*sub3;

inti,j,k;

sub1=(SString*)malloc(sizeof(SString));

sub2=(SString*)malloc(sizeof(SString));

sub3=(SString*)malloc(sizeof(SString));

gets(s.ch);

s.len=strlen(s.ch);

gets(t.ch);

t.len=strlen(t.ch);

/*SubString(sub1,s,1,1);

c

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 水产渔业

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1