欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    “数据结构”作业 02 - 解答.doc

    • 资源ID:23861195       资源大小:122.50KB        全文页数:11页
    • 资源格式: DOC        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    “数据结构”作业 02 - 解答.doc

    Four short words sum up what has lifted most successful individuals above the crowd: a little bit more.-author-date“数据结构”作业 02 - 解答“数据结构”作业 02 - 解答2-1 编写一个实现在顺序表中删除给定元素操作的函数:bool deletion(sqList &L, element e) int i=0; while(i<L.len && L.datai!=e) i+; if(i=L.len) return false;/ 表中不存在元素e while(i<L.len-1) L.datai=L.datai+1; i+; L.len-; return true;2-2 编写一个实现在单链表中的元素a之前插入元素b操作的函数: bool insertion(linknode *hp, element a, element b) linknode *p; while(hp->next!=NULL && hp->next->data!=a) hp=hp->next; if(hp->next=NULL) return false;/ 表中不存在元素a p=new linknode; p->data=b;p->next=hp->next; hp->next=p; return true;2-3 若要求在时间复杂度为O(1)的前提下实现线性表访问当前元素的前趋和后继,线性表可以采用哪些存储结构?1. 采用顺序表。设当前元素为L.datap,则其前趋为L.datap-1,后继为L.datap+1。2. 采用双向循环链表。设指针p指向当前元素,则p->prior指向前趋,p->next指向后继。2-4 比较线性表的顺序存储结构和链式存储结构。线性表顺序存储结构的优点是随机存取,缺点是需预分配一个大数组而存在空间冗余,或分配不足易发生溢出,且元素的插入或删除操作需要移动大量元素而费时,尤其在元素结点较大时更不可取。链式存储结构弥补了顺序存储结构的缺陷,但无法进行随机存取,通常需要通过遍历(由头结点开始)实现定位和查找等操作。2-5* 运用单向循环链表求解约瑟夫环问题,试编程实现输出出列序列。#include <iostream.h>typedef struct node int number; struct node *next; linknode;void main() linknode *R, *p, *q; int n, k, m, i; cout<<"n = " cin>>n;/ n个人 cout<<"k = " cin>>k;/ 第k个开始 cout<<"m = " cin>>m;/ 报数到m /* 初始化单向循环单链表 */ i=1; R=new link_node; / 建立第一个结点 R->number=i; i+; p=R; while(i<=n) / 建立后续各结点 q=new link_node; q->number=i; i+; p->next=q; p=q; p->next=R; / 使最后一个结点的后继为第一个结点 /*/ /* 定位到编号为k的结点 */ i=1; p=R; while(i<k) q=p; / q指向前驱结点 p=p->next; i+; /*/ while(p->next!=p) / 环中有1个以上结点时 i=1; while(i<m) / 报数到m q=p; p=p->next; i+; cout<<p->number<<", " / 出列 q->next=p->next; delete p; p=q->next; cout<<p->number<<endl; / 最后一个出列 delete p;-

    注意事项

    本文(“数据结构”作业 02 - 解答.doc)为本站会员(豆****)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开