| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1331 人关注过本帖
标题:[讨论]谁自认为数据结构够强,进来看看这几个题目!!!
只看楼主 加入收藏
superbecho
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2004-11-14
收藏
 问题点数:0 回复次数:3 
[讨论]谁自认为数据结构够强,进来看看这几个题目!!!

1.编一C程序,它能根据读入的数据构造有向图G,并输出G的DFS遍历序列(从V0开始),图的输入形式为n V0 Vi0 V1 Vi1 V2 Vi2...Vi Vin -1 -1(-1,-1为输入结束标记,其余的值都>=0且<n),它们都是整数,且20>n>0。

2.编一C程序,它能读入集合A的一串整数(以-9999为结束标记,整数个数小于1000)和集合B 的一串整数(以-9999为结束标记,整数个数小于1000),计算并以从小到大的次序输出A-B 的所有元素(为A或B输入时,同一个数可能出现多次,而A与B的差集中同一个数不能出现多次)

3。字符串的替换操作replace (String &s, String &t, String &v)是指:若ts的子串,则用串v替换串t在串s中的所有出现;若t不是s的子串,则串s不变。例如,若串s为“aabbabcbaabaaacbab”,串t为“bab”,串v为“abdc”,则执行replace操作后,串s中的结果为“aababdccbaabaaacabdc”。试利用字符串的基本运算实现这个替换操作。

4. 设n个人围坐在一个圆桌周围,现在从第s个人开始报数,数到第m个人,让他出局;然后从出局的下一个人重新开始报数,数到第m个人,再让他出局,……,如此反复直到所有的人全部出局为止。下面要解决的Josephus问题是:对于任意给定的n, sm,求出这n个人的出局序列。请以n = 9, s = 1, m = 5为例,人工模拟Josephus的求解过程以求得问题的解。

5. 假设以数组Q[m]存放循环队列中的元素, 同时设置一个标志tag,以tag == 0和tag == 1来区别在队头指针(front)和队尾指针(rear)相等时,队列状态为“空”还是“满”。试编写与此结构相应的插入(enqueue)和删除(dlqueue)算法。

搜索更多相关主题的帖子: 数据结构 
2004-11-17 08:45
live41
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:67
帖 子:12442
专家分:0
注 册:2004-7-22
收藏
得分:0 
看了,那又怎么样?
2004-11-17 20:51
superbecho
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2004-11-14
收藏
得分:0 

斑竹,

解答一下,谢谢。

2004-11-19 14:24
stnlcd
Rank: 1
等 级:新手上路
帖 子:177
专家分:1
注 册:2004-11-21
收藏
得分:0 

对于第一题:算法关键是对输入字符串的分析,对于建图许多书上都有!

对于第二题:我的想法是:a-b就是要求在a中除去a,b共有的元素,是离散数学中的集合运算部分.作法有很多种.可以分别将a,b中的元素按升序排序,用插入排序,这样可以在排序过程中去掉a,b之中的重复元素.然后顺序读取b中的元素,并在a中查找这个元素,如果没有这个元素不做处理,并读取下一个,如果有这个元素就在a中将这个元素删除,再取下一个,最后a中的元素就是a-b了.

其他三个好象没什么难度.


要让一个男人破产,请给他一架相机,要让一个男人倾家荡产,请给他一架望远镜。
2004-11-21 21:33
快速回复:[讨论]谁自认为数据结构够强,进来看看这几个题目!!!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016510 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved