列表

详情


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

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

给你一个二维整数数组 edges ,其中 edges[i] = [ui, vi] 表示在节点 uivi 之间存在一条边。请你找出并返回 edges 所表示星型图的中心节点。

 

示例 1:

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

示例 2:

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

 

提示:

原站题解

去查看

上次编辑到这里,代码来自缓存 点击恢复默认模板
class Solution { public: int findCenter(vector<vector<int>>& edges) { } };

python3 解法, 执行用时: 112 ms, 内存消耗: 40.3 MB, 提交时间: 2023-10-11 11:06:25

class Solution:
    def findCenter(self, edges: List[List[int]]) -> int:
        x, y = edges[0][0], edges[0][1]
        if x == edges[1][0] or x == edges[1][1]:
            return x
        return y

cpp 解法, 执行用时: 220 ms, 内存消耗: 66.2 MB, 提交时间: 2023-10-11 11:05:41

class Solution {
public:
    int findCenter(vector<vector<int>>& edges) {
        int x = edges[0][0], y = edges[0][1];
        if ( x == edges[1][0] || x == edges[1][1] )
            return x;
        
        return y;
    }
};

java 解法, 执行用时: 0 ms, 内存消耗: 70.9 MB, 提交时间: 2023-10-11 11:05:29

class Solution {
    public int findCenter(int[][] edges) {
        int x = edges[0][0], y = edges[0][1];
        if ( x == edges[1][0] || x == edges[1][1] )
            return x;
        
        return y;
    }
}

golang 解法, 执行用时: 180 ms, 内存消耗: 13.7 MB, 提交时间: 2021-07-01 15:50:43

func findCenter(edges [][]int) int {
    x, y := edges[0][0], edges[0][1]
    if x == edges[1][0] || x == edges[1][1] {
        return x
    }
    return y
}

上一题