当前位置: 首页 > news >正文

1791.找出星形图的中心节点

刷算法题:

第一遍:1.看5分钟,没思路看题解

2.通过题解改进自己的解法,并且要写每行的注释以及自己的思路。

3.思考自己做到了题解的哪一步,下次怎么才能做对(总结方法)

4.整理到自己的自媒体平台。

5.再刷重复的类似的题目,根据时间和任务安排刷哪几个板块

6.用c++语言 都刷过一遍了 就刷中等

一.题目

有一个无向的 星型 图,由 n 个编号从 1 到 n 的节点组成。星型图有一个 中心 节点,并且恰有 n - 1 条边将中心节点与其他每个节点连接起来。

给你一个二维整数数组 edges ,其中 edges[i] = [ui, vi] 表示在节点 ui 和 vi 之间存在一条边。请你找出并返回 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 <= 105
  • edges.length == n - 1
  • edges[i].length == 2
  • 1 <= ui, vi <= n
  • ui != vi
  • 题目数据给出的 edges 表示一个有效的星型图

二、反思

1.自己的解法

class Solution {
public:int findCenter(vector<vector<int>>& edges) {// ?之前的是判断deges【0】【0】是否是中心节点。return edges[0][0] == edges[1][0] || edges[0][0] == edges[1][1] ? edges[0][0] : edges[0][1];}
};

2.题目的解法 

class Solution {
public:int findCenter(vector<vector<int>>& edges) {int n = edges.size() + 1;vector<int> degrees(n + 1);for (auto & edge : edges) {degrees[edge[0]]++;degrees[edge[1]]++;}for (int i = 1; ; i++) {if (degrees[i] == n - 1) {return i;}}}
};作者:力扣官方题解
链接:https://leetcode.cn/problems/find-center-of-star-graph/solutions/1264727/zhao-chu-xing-xing-tu-de-zhong-xin-jie-d-1xzm/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

 3.思路的异同

题目的解法就是计算节点的度(第一个for循环),第二个for循环就是找到最大的那个度的节点。

三.进步的地方

 学会计算节点的度了。

相关文章:

  • zdppy_mcrud操作MySQL数据库教程
  • Leetcode 第 130 场双周赛题解
  • 【Hive SQL 每日一题】行列转换
  • Centos 停服倒计时!你的操作系统何去何从?
  • C++小病毒
  • 正则项学习笔记
  • Windows:iHasher-v0.2安装报错Windows 功能 .NET Framework 3.5
  • 2024年 电工杯 (A题)大学生数学建模挑战赛 | 园区微电网风光储协调优化配置 | 数学建模完整代码解析
  • 【ChatGPT】 Microsoft Edge 浏览器扩展使用 GPT
  • 【会议征稿,IEEE独立出版】第四届计算机技术与信息科学国际研讨会(ISCTIS 2024)
  • Java面试八股之有哪些线程安全的集合类
  • 【晶体拆解】Quartz MEMS Oscillator
  • 【Java】手把手学会数组的使用
  • react使用AntV
  • IPD在卷烟工业企业研发管理中应用
  • 【跃迁之路】【477天】刻意练习系列236(2018.05.28)
  • CentOS6 编译安装 redis-3.2.3
  • CODING 缺陷管理功能正式开始公测
  • gitlab-ci配置详解(一)
  • Javascript设计模式学习之Observer(观察者)模式
  • mongodb--安装和初步使用教程
  • Nacos系列:Nacos的Java SDK使用
  • RedisSerializer之JdkSerializationRedisSerializer分析
  • Vue ES6 Jade Scss Webpack Gulp
  • 聊聊hikari连接池的leakDetectionThreshold
  • 全栈开发——Linux
  • 如何设计一个比特币钱包服务
  • 使用common-codec进行md5加密
  • 提升用户体验的利器——使用Vue-Occupy实现占位效果
  • 一些css基础学习笔记
  • 原创:新手布局福音!微信小程序使用flex的一些基础样式属性(一)
  • 原生js练习题---第五课
  • 3月27日云栖精选夜读 | 从 “城市大脑”实践,瞭望未来城市源起 ...
  • ​香农与信息论三大定律
  • #NOIP 2014#Day.2 T3 解方程
  • #每天一道面试题# 什么是MySQL的回表查询
  • #我与Java虚拟机的故事#连载02:“小蓝”陪伴的日日夜夜
  • #我与Java虚拟机的故事#连载12:一本书带我深入Java领域
  • (1)bark-ml
  • (13)DroneCAN 适配器节点(一)
  • (3)STL算法之搜索
  • (6) 深入探索Python-Pandas库的核心数据结构:DataFrame全面解析
  • (PWM呼吸灯)合泰开发板HT66F2390-----点灯大师
  • (PyTorch)TCN和RNN/LSTM/GRU结合实现时间序列预测
  • (附源码)php新闻发布平台 毕业设计 141646
  • (四)【Jmeter】 JMeter的界面布局与组件概述
  • (一)springboot2.7.6集成activit5.23.0之集成引擎
  • (转)Linux下编译安装log4cxx
  • (转)Mysql的优化设置
  • .\OBJ\test1.axf: Error: L6230W: Ignoring --entry command. Cannot find argumen 'Reset_Handler'
  • .class文件转换.java_从一个class文件深入理解Java字节码结构
  • .net Application的目录
  • .net framework profiles /.net framework 配置
  • .NET Remoting Basic(10)-创建不同宿主的客户端与服务器端
  • .net SqlSugarHelper