1数据结构课程设计题目.docVIP

  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文档。上传文档
查看更多
1.设计顺序表和链表的函数库,以便在程序设计中调用 基本要求:实现顺序表和链表的基本函数和常用函数。 2.二叉排序树的实现 【基本要求】 用二叉链表作存储结构。? 1)?输入数列L,生成一棵二叉排?序树T; 2)?对二叉排序树T作中序遍历,输出结果; 3)?输入元素x,?查找二叉排序树T,?若存在含x的结点,?则删除该结点,?并作中序遍历(执行操作2);否则输出信息“无x”。 3.??利用栈求表达式的值,加减乘除,带括弧的混合运算。 4.编写程序完成两个高次多项式的加法和减法运算 5.编写程序完成两个高次多项式的乘法运算 6.对给定的图,给出其深度优先序列 7.对给定的图,给出其广度优先序列 8.对给定的图,编写求最小生成树算法,用prim思想 9.散列表的设计与实现 【问题描述】 设计散列表实现电话号码查找系统。 【基本要求】 1)?设每个记录有下列数据项:电话号码、用户名、地址; 2)?从键盘输入各记录,分别以电话号码和用户名为关键字建立散列表; 3)?采用一定的方法解决冲突; 4)?查找并显示给定电话号码的记录; 5)?查找并显示给定用户名的记录。 10.?约瑟夫环 【问题描述】 与瑟夫(Joseph)问题的一种描述是:编号为1,2,…,n的n个人顺时针方向围坐一圈,每人持有一个密码(一个正整数)。开始人选一个正整数作为报数上限m,从第一个人开始按顺时针方向自1开始顺序报数,报到m时停止报数。报m的人出列,将他手上的密码作为新的m值,从他在顺时针方向上的下一个人开始重新从1报数,如此下去,直到所有人全部出列为止,设计一个程序来求出出列顺序。 【基本要求】 利用单向循环链表存储结构模拟此过程,按照出列的顺序印出各人的编号。 【测试数据】 m的初值为20,n=7,7个人的密码依次为:3,1,7,2,4,8,4,首先m值为6(正确出列顺序应该为?6,1,4,7,2,3,5)。 11.数制转换问题(限1?人完成) 任意给定一个M进制的数x?,请实现如下要求 1)求出此数x的10进制值(用MD表示) 2)实现对x向任意的一个非M进制的数的转换。 3)用两种方法实现上述要求(用栈解决,用数组解决)。 12.采用三元组的存储方式实现矩阵的转置运算,用书上的两中方法来实现,1)按照列进行转换,2)利用快速转置的方法进行转换 13.采用三元组的存储方式实现矩阵的乘法运算。 14.排序综合???利用随机函数产生N个随机整数,对这些数进行多种方法进行排序。 要求:至少采用三种方法实现上述问题求解(提示,可采用的方法有插入排序、希尔排序、起泡排序、快速排序、选择排序、堆排序、归并排序)。 15.设计栈和队列的函数库,以便在程序设计中调用 基本要求:实现栈和队列的基本函数和常用函数。(用顺序存储结构) 16.设计栈和队列的函数库,以便在程序设计中调用 基本要求:实现栈和队列的基本函数和常用函数。(用链式存储结构) 百度里找到的 /shujujiegou/92.html #include iostream.h #include string.h #include fstream.h #define NULL 0 unsigned int key; unsigned int key2; int *p; struct node //建节点 { char name[8],address[20]; char num[11]; node * next; }; typedef node* pnode; typedef node* mingzi; node **phone; node **nam; node *a; void hash(char num[11]) //哈希函数 { int i = 3; key=(int)num[2]; while(num[i]!=NULL) { key+=(int)num[i]; i++; } key=key%20; } void hash2(char name[8]) //哈希函数 { int i = 1; key2=(int)name[0]; while(name[i]!=NULL) { key2+=(int)name[i]; i++; } key2=key2%20; } node* input() //输入节点 { node *temp; temp = new node;

文档评论(0)

飞扬的岁月 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档