华为OD机试 - 发广播 - 并查集(Java 2024 C卷 200分)

本文介绍了华为OD机试中的一道题目,涉及广播站之间的连接问题。通过并查集数据结构,解决如何最少启动广播站以确保所有站点接收到消息。文章详细讲解了并查集的概念、Java实现,并提供了算法源码和效果展示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、题目描述

某地有N个广播站,站点之间有些有连接,有些没有。

有连接的站点在接受到广播后会互相发送。

给定一个N*N的二维数组matrix,数组的元素都是字符"0"或者"1"。

Matrix[i][j]="1"代表i和j站点之间有连接,matrix[i][j]="0"代表没连接。

现在要发一条广播,问初始最少给几个广播站发送,才能保证所有的广播站都收到消息。

二、输入描述

从stdin输入,共一行数据,表示二维数组的各行,用逗号分隔行。保证每行字符串所合的字符数一样的。

三、输出描述

返回初始最少需要发送广播站个数。

四、测试用例

1、输入

110,110,001

2、输出

2

3、说明

站点1和站点2有直接连接,站点3和站点1和站点2没有直接连接,所以开始至少需要两个站点的广播。

五、并查集

并查集是一种树型的数据结构,用于处理一些不相交集合ÿ

评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

哪 吒

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值