搜题
网友您好,请在下方输入框内输入要搜索的题目:
搜题
题目内容 (请给出正确答案)
提问人:网友anonymity 发布时间:2022-01-06
[主观题]

试设计并实现不相交集合类结构,并写出union和find算法。 集合S上的等价关系R指的是满足自反、对称、传递性质

试设计并实现不相交集合类结构,并写出union和find算法。

集合S上的等价关系R指的是满足自反、对称、传递性质的关系,S中具有等价关系R的元素构成的子集称为等价类,S中所有的等价类构成了集合S的一个划分:S中的每一个元素都在且仅在一个等价类中(等价类之间不相交)。

等价类(集合)作为一种抽象数据类型可以定义两种基本操作:find和union。对于S中的元素x,find(x)返回元素x的等价类名;union(i,j)执行的操作是将等价类i和等价类j合并成一个新的等价类。如果要把(a,b)添加到等价关系R中,即定义S中的元素a和b等价,根据等价关系的定义,实际上是将a所在的等价类和b所在的等价类合并。因此首先要分别对a和b进行find操作,看它们是否在同一个等价类。如果它们不在同一个等价类,则执行union(find(a),find(b))操作,将a和b所在的两个等价类合并为一个新的等价类。这样的操作改变了S的划分方法。

简答题官方参考答案 (由简答题聘请的专业题库老师提供的解答)
查看官方参考答案
更多“试设计并实现不相交集合类结构,并写出union和find算法。 集合S上的等价关系R指的是满足自反、对称、传递性质”相关的问题
第1题
问题描述:给定平面XOY上n个开线段组成的集合I和一个正整数k,试设计一个算法,从开线段集合I中选取出开线段集合,使得在X轴上的任何一点p,S中与直线x=p相交的开线段个数不超过k,且达到最大.这样的集合S称为开线段集合的最长k可重线段集,称为最长k可重线段集的长度.

对于任何开线段z,设其端点坐标为(x0,y0)和(x1,y1),则开线段z的长度定义为

算法设计:对于给定的开线段集合I和正整数k.计算开线段集合I的最长k可重线段集的长度.

数据输入:由文件input.txt提供输入数据.文件的第1行有2个正整数n和k,分别表示开线段的个数和开线段的可重叠数.接下来的n行,每行有4个整数,表示开线段的2个端点坐标.

结果输出:将计算的最长k可重线段集的长度输出到文件output.txt.

点击查看答案
第2题
给定n个不等的整数构成的集合L和整数s,设计一个算法判断在L中是否存在两个整数x和y(x < y),满足x + y = s,以加法运算作为基本运算分析你的算法在最坏情况下的时间复杂度。
点击查看答案
第3题
下列关于集合查询的说法正确的是( )。

A、集合查询的结果不会自动去除重复的元组。

B、任意两个select语句都可以用来表达集合查询。

C、两个参与集合查询的select语句中,查询结果只要具备相同的属性名即可。

D、两个参与集合查询的select语句中,查询结果不仅要具备相同的属性名,而且属性名的排列顺序也要一致。

点击查看答案
第4题
给定一有向图的邻接表如下。从顶点V1出发按深度优先搜索法进行遍历,则得到的顶点序列为( )。 6题图.png

A、V1,V2,V3,V4,V7,V6,V5

B、V1,V5,V4,V7,V6,V2,V3

C、V1,V5,V6,V4,V7,V2,V3

D、V1,V5,V4,V7,V6,V3,V2

点击查看答案
第5题
定义一个元索类型为int、元素个数不受限制的集合类Set.除了定义一些必要的函数外,还定义具有下列功能的成员函数。

●bool IsEmpty():判断集合是否为空;

●int size():返回元素个数:

●bool IsElement(int e) const: 判断e是否属于集合:

●bool IsSubset( const Set&. s)const: 判断s是否包含于集合:

●bool IsEqual(const Set&. s)const: 判断集合是否相等;

●Set&. insert(int e):将e加入到集合中;

●Set union(const Set&. s) const:求集合的并:

●Set intersection(const Set& s) const:求集合的交;

●Set difference(const Set& s) const: 求集合的差。

点击查看答案
第6题
下面说法错误的是( )。

A、SELECT语句是SQL的核心语句,它完成查询功能。

B、要查询一个表的所有字段数据,可以使用*匹配,也可以列出表的所有字段。

C、在MySQL中目前查询表中的记录除了使用SELECT语句,还可以使用show语句。

D、SELECT语句中可以使用AS关键字指定表名的别名或字段的别名,AS关键字也可以省略不写。

点击查看答案
第7题
试根据全年级学生的姓名,构造一个散列表,选择适当的散列函数和解决碰撞方法,设计并实现插入、删除和查找算法,统计碰撞发生的次数(用拉链法解决碰撞时负载因子取2,用开地址法时取1/2)。
点击查看答案
第8题
构造散列表,采用开地址法处理冲突,根据下面公式计算下一地址:

d1=H(key)=3*key%11

di=(di-1+(7*key))%11  (i=2,3,…)

试在0~10的散列地址空间中对关键字序列(22,41,53,46,30,13,01,67)构造散列表,求等概率情况下查找成功的平均查找长度,并设计生成这个散列表的完整的函数。

点击查看答案
第9题
设计一种散列法表示的字典存储方法,适合使用拉链法解决碰撞,给出在这种存储结构中实现字典元素的插入和删除算法。
点击查看答案
重要提示: 请勿将账号共享给其他人使用,违者账号将被封禁!
查看《购买须知》>>>
重置密码
账号:
旧密码:
新密码:
确认密码:
确认修改
购买搜题卡查看答案
购买前请仔细阅读《购买须知》
请选择支付方式
微信支付
支付宝支付
点击支付即表示你同意并接受《服务协议》《购买须知》
立即支付
搜题卡使用说明

1. 搜题次数扣减规则:

功能 扣减规则
基础费
(查看答案)
加收费
(AI功能)
文字搜题、查看答案 1/每题 0/每次
语音搜题、查看答案 1/每题 2/每次
单题拍照识别、查看答案 1/每题 2/每次
整页拍照识别、查看答案 1/每题 5/每次

备注:网站、APP、小程序均支持文字搜题、查看答案;语音搜题、单题拍照识别、整页拍照识别仅APP、小程序支持。

2. 使用语音搜索、拍照搜索等AI功能需安装APP(或打开微信小程序)。

3. 搜题卡过期将作废,不支持退款,请在有效期内使用完毕。

请使用微信扫码支付(元)

订单号:

遇到问题请联系在线客服

请不要关闭本页面,支付完成后请点击【支付完成】按钮
遇到问题请联系在线客服
恭喜您,购买搜题卡成功 系统为您生成的账号密码如下:
重要提示:请勿将账号共享给其他人使用,违者账号将被封禁。
发送账号到微信 保存账号查看答案
怕账号密码记不住?建议关注微信公众号绑定微信,开通微信扫码登录功能
警告:系统检测到您的账号存在安全风险

为了保护您的账号安全,请在“简答题”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!

- 微信扫码关注简答题 -
警告:系统检测到您的账号存在安全风险
抱歉,您的账号因涉嫌违反简答题购买须知被冻结。您可在“简答题”微信公众号中的“官网服务”-“账号解封申请”申请解封,或联系客服
- 微信扫码关注简答题 -
请用微信扫码测试
欢迎分享答案

为鼓励登录用户提交答案,简答题每个月将会抽取一批参与作答的用户给予奖励,具体奖励活动请关注官方微信公众号:简答题

简答题官方微信公众号

简答题
下载APP
关注公众号
TOP