『图』找到小镇的法官997

题目相关

题目解读

根据题意,我们可以很明显的看出需要用到有向图这一数据结构,而我们需要从从图中遍历查找是否满足入度为N-1并且出度为0的点。

Python相关

我们可以简单地用二维数组来模拟一个图,也可以用一个值类型的列表的字典来模拟。
但在本题中,由于只会涉及到出入度等并不够精细的数据量,所以我们可以简单的只用数组+集合模拟即可。

具体实现

具体实现如下:

class Solution:
    def findJudge(self, N: int, trust: List[List[int]]) -> int:
        votes = [0] * N
        normal = set()
        for a, b in trust:
            normal.add(a)
            votes[b - 1] += 1
        for inx, num in enumerate(votes):
            if num == N - 1 and inx + 1 not in normal:
                return inx + 1
        return -1
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容