【LeetCode每日一题】——1791.找出星型图的中心节点

文章目录

  • 一【题目类别】
  • 二【题目难度】
  • 三【题目编号】
  • 四【题目描述】
  • 五【题目示例】
  • 六【题目提示】
  • 七【解题思路】
  • 八【时空频度】
  • 九【代码实现】
  • 十【提交结果】

一【题目类别】

二【题目难度】

  • 简单

三【题目编号】

  • 1791.找出星型图的中心节点

四【题目描述】

  • 有一个无向的 星型 图,由 n n n 个编号从 1 1 1 n n n 的节点组成。星型图有一个 中心 节点,并且恰有 n − 1 n - 1 n1 条边将中心节点与其他每个节点连接起来。
  • 给你一个二维整数数组 e d g e s edges edges ,其中 e d g e s [ i ] = [ u i , v i ] edges[i] = [u_i, v_i] edges[i]=[ui,vi] 表示在节点 u i u_i ui v i v_i vi 之间存在一条边。请你找出并返回 e d g e s edges edges 所表示星型图的中心节点。

五【题目示例】

  • 示例 1
    在这里插入图片描述

    • 输入:edges = [[1,2],[2,3],[4,2]]
    • 输出:2
    • 解释:如上图所示,节点 2 与其他每个节点都相连,所以节点 2 是中心节点。
  • 示例 2

    • 输入:edges = [[1,2],[5,1],[1,3],[1,4]]
    • 输出:1

六【题目提示】

  • 3 < = n < = 1 0 5 3 <= n <= 10^5 3<=n<=105
  • e d g e s . l e n g t h = = n − 1 edges.length == n - 1 edges.length==n1
  • e d g e s [ i ] . l e n g t h = = 2 edges[i].length == 2 edges[i].length==2
  • 1 < = u i , v i < = n 1 <= u_i, v_i <= n 1<=ui,vi<=n
  • u i ! = v i u_i != v_i ui!=vi
  • 题目数据给出的 e d g e s edges edges 表示一个有效的星型图

七【解题思路】

  • 该题需要利用图的基本性质,即度的概念
  • 根据题意,“星型图”的中心节点连接其余n - 1个节点
  • 所以“星型图”的中心节点的度为n - 1
  • 故只需要计算每个节点的度,度为n - 1的节点即为“星型图”的中心节点
  • 具体细节可以参考下面的代码
  • 最后返回结果即可

八【时空频度】

  • 时间复杂度: O ( n ) O(n) O(n) n n n为图中的节点数量
  • 空间复杂度: O ( n ) O(n) O(n) n n n为图中的节点数量

九【代码实现】

  1. Java语言版
class Solution {public int findCenter(int[][] edges) {// 获取节点数量int n = edges.length + 1;// 初始化数组,表示图中节点的度int[] degrees = new int[n + 1];// 计算图中每个节点的度for (int i = 0; i < edges.length; i++) {degrees[edges[i][0]]++;degrees[edges[i][1]]++;}// 若某个节点的度=节点数量-1,其即为星型图的中心节点for (int i = 1; i < degrees.length; i++) {if (degrees[i] == n - 1) {return i;}}return -1;}
}
  1. Python语言版
class Solution:def findCenter(self, edges: List[List[int]]) -> int:# 获取节点数量n = len(edges) + 1# 初始化数组,表示图中节点的度degrees = [0] * (n + 1)# 计算图中每个节点的度for x, y in edges:degrees[x] += 1degrees[y] += 1# 若某个节点的度=节点数量-1,其即为星型图的中心节点for index, degree in enumerate(degrees):if degree == n - 1:return index
  1. C语言版
int findCenter(int** edges, int edgesSize, int* edgesColSize)
{// 获取节点数量int n = edgesSize + 1;// 初始化数组,表示图中节点的度int* degrees = (int*)malloc(sizeof(int) * (n + 1));memset(degrees, 0, (n + 1) * sizeof(int));// 计算图中每个节点的度for (int i = 0; i < edgesSize; i++){degrees[edges[i][0]]++;degrees[edges[i][1]]++;}// 若某个节点的度=节点数量-1,其即为星型图的中心节点for (int i = 0; i < (n + 1); i++){if (degrees[i] == (n - 1)){return i;}}return -1;
}

十【提交结果】

  1. Java语言版
    在这里插入图片描述

  2. Python语言版
    在这里插入图片描述

  3. C语言版
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/58641.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

深入了解 美国高防 CN2 :如何提升全球化业务的网络安全与性能

美国高防 CN2 的重要性 在跨国企业和全球化业务的不断扩展下&#xff0c;对高性能和安全的网络连接需求不断增加。美国高防 CN2&#xff08;Global Internet Access&#xff09;以其卓越的跨境传输效率和强大的防护能力&#xff0c;成为许多企业关注的焦点。尤其是对电商、游戏…

Endnote如何关联Word,在Word上通过Endnote插入文献

1、Word版本已被激活 首先检查Word版本是否已经被激活&#xff0c;不管是正版还是破解版&#xff0c;未激活状态&#xff08;试用&#xff09;可能会导致关联不成功。如下图所示为已激活版本&#xff0c;在“文件”—“账户”可看。 2、勾选开发工具 其次&#xff0c;打开Wor…

1688旺铺主页首页装修 代码 首页悬浮视频怎么做?阿里巴巴代码装修悬浮视频代码固定视频悬浮漂浮视频

1688旺铺主页首页装修 代码 首页悬浮视频怎么做&#xff1f;阿里巴巴代码装修悬浮视频代码固定视频悬浮漂浮视频 一秒美工工具

VB中如何处理国际化(Internationalization)和本地化(Localization)

在Visual Basic (VB) 中处理国际化&#xff08;Internationalization&#xff0c;简称 i18n&#xff09;和本地化&#xff08;Localization&#xff0c;简称 l10n&#xff09;是一个多步骤的过程&#xff0c;涉及准备应用程序以支持多种语言和文化&#xff0c;以及为每种目标语…

【错误描述:“L2TP连接尝试失败,因为安全层在初始化与远程计算机的协商时遇到了一个处理错误”】

解决办法&#xff1a; 一、检查并更改网络协议 &#xff08;如果网络协议更改完成&#xff0c;还是链接失败&#xff0c;直接看 第二点&#xff09; 1、打开网络和Internet 设置 2、找到更改适配器选项 3、先择你要链接VPN&#xff0c;右键选择属性&#xff0c;之后选择安…

postgresql杀掉数据库连接阻塞

在PostgreSQL中&#xff0c;如果你想杀掉一个阻塞其他数据库操作的数据库连接&#xff0c;你可以使用pg_terminate_backend函数。这个函数需要一个backend ID&#xff0c;你可以从pg_stat_activity视图中获取。 以下是一个SQL命令的例子&#xff0c;用于杀掉阻塞其他操作的数据…

基于SSM学生竞赛模拟系统的设计

管理员账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;用户管理&#xff0c;公告信息管理&#xff0c;试题管理&#xff0c;论坛交流&#xff0c;试卷管理&#xff0c;系统管理 前台账号功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;公告…

罗马仕、西圣、安克充电宝哪款品牌更好?综合测评对比谁是TOP.1

罗马仕、西圣、安克充电宝哪款品牌更好&#xff1f;在移动设备日益普及的今天&#xff0c;充电宝已成为许多人的必备配件。市场上涌现出多个知名品牌的充电宝&#xff0c;其中罗马仕、西圣和安克尤为受到消费者的关注。这三个品牌在产品质量、技术创新和用户体验方面各有千秋&a…

在 Ubuntu 22.04 上部署Apache 服务, 访问一张照片

要在 Ubuntu 22.04 上部署一张照片&#xff0c;使其可以通过 Apache 访问&#xff0c;你可以按照以下步骤进行操作&#xff1a; 1. 安装 Apache&#xff08;如果尚未安装&#xff09; 如果你还没有安装 Apache&#xff0c;可以使用以下命令&#xff1a; sudo apt update sud…

WSL2打开x11应用报错Error: Can‘t open display: :0

Environment&#xff1a; WSL 版本&#xff1a; 2.3.24.0 内核版本&#xff1a; 5.15.153.1-2 WSLg 版本&#xff1a; 1.0.65 MSRDC 版本&#xff1a; 1.2.5620 Direct3D 版本&#xff1a; 1.611.1-81528511 DXCore 版本&#xff1a; 10.0.26100.1-240331-1435.ge-release Wind…

spring boot + mybatis + mysql 批量更新报错

问题描述&#xff1a;spring boot mybatis mysql 批量更新报错&#xff0c;如下图所示&#xff1a; mapper文件如下&#xff1a; <!--更新样品项目结果/检验结果内容&#xff0c;提交结果--><update id"submitResult" parameterType"com.weiyu.pojo…

Native Crash 信号速查

重点信号 SIGSEGV&#xff08;11&#xff09; signal segmentation violation&#xff1a;段错误无效内存访问访问无权访问的内存空指针、越界访问&#xff08;mmap&#xff1f;&#xff09; SIGBUS&#xff08;7&#xff09; Bus Error&#xff1a;总线错误非法内存访问访问 …

mac-ubuntu虚拟机(扩容-共享-vmtools)

一、磁盘扩容 使用GParted工具对Linux磁盘空间进行扩展 https://blog.csdn.net/Time_Waxk/article/details/105675468 经过上面的方式后还不够&#xff0c;需要再进行下面的操作 lvextend 用于扩展逻辑卷的大小&#xff0c;-l 选项允许指定大小。resize2fs 用于调整文件系统的…

bitpoke- mysql-operator cluster

sidecar版本只支持到8.0.35&#xff0c;35可以支持到mysql8.0.35 . 默认镜像是5.7的。需要自己打sidecar的镜像&#xff1a; # Docker image for sidecar containers # https://github.com/bitpoke/mysql-operator/tree/master/images/mysql-operator-sidecar-8.0 # 参考5…

SQL进阶技巧:巧用异或运算解决经典换座位问题

目录 0 问题描述 1 数据准备 2 问题分析 2.1 什么是异或 2.2异或有什么特性? 2.3 异或应用 2.4 本问题采用异或SQL解决方案 3 小结 0 问题描述 表 seat中有2个字段id和student id 是该表的主键(唯一值)列,student表示学生姓名。 该表的每一行都表示学生的姓名和 ID。…

力扣227:基本计算器II

给你一个字符串表达式 s &#xff0c;请你实现一个基本计算器来计算并返回它的值。 整数除法仅保留整数部分。 你可以假设给定的表达式总是有效的。所有中间结果将在 [-231, 231 - 1] 的范围内。 注意&#xff1a;不允许使用任何将字符串作为数学表达式计算的内置函数&#…

python爬虫基础篇:http协议、请求头、响应头

HTTP HTTPS协议 搞爬虫就是搞http协议&#xff0c;位于应用层 HTTP协议以明文方式发送数据&#xff0c;数据无法加密&#xff0c;易被盗取 HTTPS协议较http协议加了个安全层&#xff0c;即有一个SSL协议 区别&#xff1a; HTTPS协议需要一个ca证书&#xff0c;一般免费较少…

质数的小游戏~(牛客,cf)

添加链接描述 H 题&#xff1a; n 的范围是 1e6 大致的思路 就是 每一段 固定一个质数&#xff0c;然后这一段中的 数下标 的和都是这个质数。 对于[1 n] 这些数 &#xff0c;对于n 向前找到 一个比他大的最小的质数。假设这个质数nj 。那么也就是说 我n 这个数应该放在下标为…

‘’‘’笔记

关闭防火墙及SELinux [rootserver ~]# systemctl stop firewalld 临时关闭 [rootserver ~]# systemctl disable firewalld 取消开机启动 [rootserver ~]# setenforce 0 临时关闭&#xff0c;重启失效 设置主机名 [rootserver ~]# ho…

【热门主题】000018 人工智能深度学习模型:探索与应用

前言&#xff1a;哈喽&#xff0c;大家好&#xff0c;今天给大家分享一篇文章&#xff01;并提供具体代码帮助大家深入理解&#xff0c;彻底掌握&#xff01;创作不易&#xff0c;如果能帮助到大家或者给大家一些灵感和启发&#xff0c;欢迎收藏关注哦 &#x1f495; 目录 【热…