华东师范大学《数据结构》线性表、堆栈、队列、递归综合运用.docVIP

华东师范大学《数据结构》线性表、堆栈、队列、递归综合运用.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
华东师范大学《数据结构》线性表、堆栈、队列、递归综合运用 华东师范大学软件学院学生上机实践报告 华东师范大学软件学院上机实践报告 课程名称:数据结构与程序设计 年级:14 上机实践成绩: 指导教师:王丽苹 姓名: 方一帆 上机实践名称: 学号:10142510123 上机实践日期: 线性表、堆栈、队列、递归综合运用 周五上午 上机实践编号:NO.1 组号:123 上机实践时间:18 一、目的 1) 理解抽象数据类型(ADT)概念和线性表概念。 2) 理解Stacks和Queues基本概念,熟练掌握一些典型运用。 3) 熟练掌握Linked Stacks Queues基本操作。 4) 深入理解递归思想,可以运用递归方法解决一定难度问题。 5) 掌握单链表,双链表等数据结构。 6) 掌握字符串等数据结构。 7) 掌握六种常见排序算法。 二、内容与设计思想 1) P241 E3(c) 2) 上机完成DoubleLinkList 3) 上机完成Sortable_list,分析在不同数据量下,不同的初始序列下(顺序、倒序、乱 序)的算法效率。 三、使用环境 Windows XP,MS Visual C++6.0 四、调试过程 涉及的问题和内容写在代码的边上 在调试过程中有些时候会出现“type redefine”的error,不知道到底是为什么,经过询问同学,查老师代码,发现是include文件是出问题了。最后总结了一下,凡是.cpp文件都要include相应的.h文件。而.h文件中应该include其中会用到的.h或.cpp文件。例如在Sortable_List.cpp中就不仅#include ”Record.h”,还要加上#include “List.cpp”。而Main.cpp中往往只用include一个核心.cpp就可以了,不过还是要“具体情况,具体分析”。 在做第三个题目的时候,遇到了很多奇怪的问题,比如什么fixed,end,begin不明确符号,未命名标识符之类的问题,问了下陈锦华同学,得到了可能与命名空间中end,begin冲突所以改用using std::end尔非 using namespace std; 在实际操作中可能出现很多问题,而这是在看书或者纯看代码不动手所无法遇到的,所以数据结构这门课还是应该多多动手,敢于尝试,多问,才能有收获。 第1页 共33页 华东师范大学软件学院学生上机实践报告 五、总结 在半学期的学习中,我们学习了堆栈、队列,并且用数组和指针分别进行实现,解决了一些实际问题,比如说“数制转换”“多项式的运算”等;并且运用这些数据结构和递归算法联系在一起,解决了“汉诺塔问题”和“八皇后问题”等复杂的问题。由于身体原因,落下了几节课,再次上课时发现完全跟不上,也意识到了下半学期的数据结构学习并非像上学期那样简单,在同学的帮助下稍微有些起色,但还是有很多问题尚待解决,所以如果可以,希望各位同学不要翘课,也多注意身体,不然落下后就很难补上。 六、附录 P241 E3(c)代码: (我索性把string 的全部弄上来了。。) /* in MyStr.h */ #include iostream #include cstring #include cstdlib sing namespace std; u class MyStr { friend ostream operator(ostream cout, const MyStr myStr); friend istream operator(istream cin , MyStr myStr); public: MyStr(const char *s = ) : length_(s == NULL ? 0 : strlen(s)) { clog 隐式类型转换构造函数/默认构造函数: s endl; s_ = new char[length_ + 1]; if(length_ == 0) s_[0] = \0; else MyStrcpy(s_, s); } MyStr(const MyStr myStr) : length_(myStr.length_) { clog 复制构造函数: myStr.s_ endl; s_ = new char[length_]; MyStrcpy(s_, myStr.s_); } explicit MyStr(int i) { clog 强制类型转换构造函数: i endl; char s[32]; 第2页 共33页 华东师范大学软件学院学生上机实践报告 itoa(i, s, 10); le

文档评论(0)

kirin + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档