合肥工业大学数据结构试验一实验报告汇编文档格式.docx
- 文档编号:17776473
- 上传时间:2022-12-10
- 格式:DOCX
- 页数:20
- 大小:52.87KB
合肥工业大学数据结构试验一实验报告汇编文档格式.docx
《合肥工业大学数据结构试验一实验报告汇编文档格式.docx》由会员分享,可在线阅读,更多相关《合肥工业大学数据结构试验一实验报告汇编文档格式.docx(20页珍藏版)》请在冰豆网上搜索。
定义了链表结构中的指针类型为link,结点类型为node,并定义了部分常用运算,如构建链表,显示链表,读取链表,访问链表等;
流程:
略
实验内容
一、实验用仪器、设备:
个人计算机
C-free5.0
二、实验内容与步骤(过程及数据记录):
<
1>
求链表中第i个结点的指针(函数),若不存在,则返回NULL。
实验测试数据基本要求:
第一组数据:
链表长度n≥10,i分别为5,n,0,n+1,n+2
第二组数据:
链表长度n=0,i分别为0,2
node*list:
:
address(inti)
{
node*p=head->
next;
intn=1;
while(n!
=i&
&
p!
=NULL)
{
p=p->
n++;
}
if(p!
=NULL)returnp;
elsereturnNULL;
}
第一组数据
第二组数据
2>
在第i个结点前插入值为x的结点。
链表长度n≥10,x=100,i分别为5,n,n+1,0,1,n+2
链表长度n=0,x=100,i=5
errorcodelist:
insert(constinti,constintx)
node*p;
p=head;
if(i<
1||i>
length()+1)returnrangeerror;
node*s=newnode;
s->
data=x;
next=p->
p->
next=s;
count++;
returnsuccess;
3>
删除链表中第i个元素结点。
链表长度n≥10,i分别为5,n,1,n+1,0
链表长度n=0,i=5
delete_ele(constinti)
if(i<
1||i>
count)returnrangeerror;
node*u;
u=p->
next=u->
count--;
deleteu;
4>
在一个递增有序的链表L中插入一个值为x的元素,并保持其递增有序特性。
链表元素为(10,20,30,40,50,60,70,80,90,100),
x分别为25,85,110和8
orderinsert(intx)
node*p=head;
while(p->
next!
if(p->
next->
data<
x)p=p->
elsebreak;
node*u=newnode;
u->
next=u;
5>
将单链表L中的奇数项和偶数项结点分解开,并分别连成一个带头结点的单链表,然后再将这两个新链表同时输出在屏幕上,并保留原链表的显示结果,以便对照求解结果。
链表元素为(1,2,3,4,5,6,7,8,9,10,20,30,40,50,60)
链表元素为(10,20,30,40,50,60,70,80,90,100)
voidseparate(list&
A,list&
B,list&
C){
node*LA;
node*LB;
node*p;
node*q;
node*u;
node*s;
LA=A.get_head();
LB=B.get_head();
q=LA;
p=LA->
s=LB;
if(p->
data%2==0){
u=p;
p=p->
q->
next=p;
s->
next=u;
s=s->
}
else{
p=p->
q=q->
6>
求两个递增有序链表L1和L2中的公共元素,并以同样方式连接成链表L3。
第一组
第一个链表元素为(1,3,6,10,15,16,17,18,19,20)
第二个链表元素为(1,2,3,4,5,6,7,8,9,10,18,20,30)
第二组
第二个链表元素为(2,4,5,7,8,9,12,22)
第三组
第一个链表元素为()
第二个链表元素为(1,2,3,4,5,6,7,8,9,10)
bingji(listA,listB,list&
node*LB;
node*LC;
node*a;
node*b;
LC=C.get_head();
a=LA->
b=LB->
while(a!
=NULL&
b!
=NULL){
if(a->
data<
b->
data)a=a->
elseif(a->
data>
data)b=b->
else{
node*c=newnode;
c->
data=a->
data;
LC->
next=c;
LC=c;
C.count++;
a=a->
b=b->
LC->
next=NULL;
CPP文件附加:
#include<
iostream.h>
#include<
math.h>
enumerror_code{success,arrange_error};
typedefstructnode{
intdata;
node*next;
}node;
classlist{
public:
list();
intlength()const;
~list(){};
node*get_element(intlocate)const;
node*locate(constintx)const;
error_codecharu(constinti);
error_codeinsert(constintlocate,constinti);
error_codedelete_element(constinti);
node*get_head(){returnhead;
voidseparate(list&
B);
intbingji(listA,listB,list&
C);
voidcreate_R();
voidlist:
show();
private:
intcount;
node*head;
node*rear;
};
list:
list(){
head=newnode;
head->
count=0;
}
intlist:
length()const{
node*p=head->
intcount=0;
while(p!
p=p->
returncount;
voidlist:
create_R(){
intx;
cout<
"
请输入链表中的数值,按-1后结束创建"
endl;
cin>
>
x;
node*rear=head;
while(x!
=-1){
node*s=newnode;
data=x;
rear->
next=s;
rear=s;
}
node*list:
get_element(intlocate)const{
if(count==0)return0;
else{
if(locate<
=0||locate>
=count)
return0;
else{
node*p=head;
intk=0;
k<
locate){
p=p->
k++;
returnp;
}
show(){
node*p=head;
while(p!
cout<
p->
\t"
;
error_codelist:
insert(constintlocate,constinti){
if(count==0){
node*s=newnode;
data=i;
head->
rear=s;
count=1;
returnsuccess;
if(locate<
1||locate>
count+1)
returnarrange_error;
node*p=head;
intj=0;
while(j!
=locate-1&
p!
p=p->
j++;
next=p->
p->
count++;
returnsuccess;
}
charu(constinti){
while(p!
next!
if(p->
=i&
i<
=p->
data){
elsep=p->
if(p->
next==NULL){
node*s=newnode;
delete_element(constinti){
node*p=head;
intj=0;
while(j!
=i-1&
if(i<
1||i>
count)
returnarrange_error;
node*u=newnode;
u=p->
next=u->
B){
if(p->
u=p;
s->
s=s->
intlist:
bingji(listA,listB,list&
LC=C.get_head();
elseif(a->
else{
node*c=newnode;
c->
a=a->
LC->
returnsuccess;
intmain()
intchoice;
inti;
listA;
listB;
listC;
do
{//显示主菜单
\n"
主菜单\n"
***********************************************"
cout<
1-创建链表2-求第i个节点指针\n"
3-在第i个节点前插入一个数4-删除链表中的第i个节点\n"
5-分离链表6-求公共元素\n"
7-插入一个数8-退出\n"
Enterchoice:
cin>
choice;
switch(choice)
{
case1:
A.create_R();
B.create_R();
A.length();
B.length();
break;
case2:
intk;
qingshuruk\n"
cin>
k;
if(A.get_element(k)==NULL)
NULL<
else
A.get_element(k)->
break;
case3:
A.length();
inta,b;
请输入a,b\n"
a>
b;
A.insert(a,b);
A.show();
case4:
inti;
请输入一个值\n"
i;
if(i==0||i>
A.length())
NULL\n"
A.delete_element(i);
break;
case5:
A.show();
separate(A,B);
B.show();
case6:
A.show();
A.bingji(A,B,C);
C.show();
case7:
{inti;
cout<
请输入一个数\n"
cin>
A.charu(i);
}
case8:
结束运行"
(一)上海的经济环境对饰品消费的影响}
就算你买手工艺品来送给朋友也是一份意义非凡的绝佳礼品哦。
而这一份礼物于在工艺品店买的现成的礼品相比,就有价值意义,虽然它的成本比较低但它毕竟它是你花心血花时间去完成的。
就像现在最流行的针织围巾,为何会如此深得人心,更有人称它为温暖牌绝大部分多是因为这个原因哦。
而且还可以锻炼你的动手能力,不仅实用还有很大的装饰功用哦。
木质、石质、骨质、琉璃、藏银……一颗颗、一粒粒、一片片,都浓缩了自然之美,展现着千种风情、万种诱惑,与中国结艺的朴实形成了鲜明的对比,代表着欧洲贵族风格的饰品成了他们最大的主题。
}while(choice!
=7);
return0;
(一)创业机会分析
众上所述,我们认为:
我们的创意小屋计划或许虽然会有很多的挑战和困难,但我们会吸取和借鉴“漂亮女生”和“碧芝”的成功经验,在产品的质量和创意上多下工夫,使自己的产品能领导潮流,领导时尚。
在它们还没有打入学校这个市场时,我们要巩固我们的学生市场,制作一些吸引学生,又有使学生能接受的价格,勇敢的面对它们的挑战,使自己立于不败之地。
手工艺制品是我国一种传统文化的象征,它品种多样,方式新颖,制作简单,深受广大学生朋友的喜欢。
当今大学生的消费行为表现在追求新颖,追求时尚。
追求个性,表现自我的消费趋向:
购买行为有较强的感情色彩,比起男生热衷于的网络游戏,极限运动,手工艺制品更得女生的喜欢。
还有一点就是beadwork公司在“碧芝自制饰品店”内设立了一个完全的弹性价格空间:
选择饰珠的种类和多少是由顾客自己掌握,所以消费者可以根据自己的消费能力进行取舍;
此外由于是顾客自己制作,所以从原料到成品的附加值就可以自己享用。
(5)资金问题
标题:
上海发出通知为大学生就业—鼓励自主创业,灵活就业2004年3月17日
关于DIY手工艺制品的消费调查
三、实验结果分析、思考题解答∶
四、感想、体会、建议∶
实验成绩∶
指导教师签名:
年月日
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 合肥 工业大学 数据结构 试验 实验 报告 汇编