每日一题——LeetCode997

方法一 个人方法:

这题的意思就是1-n里面找到一个数,它不指向任何数,其他数都要指向它

  1. 找到没有指向任何数的那个idx,如果不存在这样的数那么就返回-1
  2. 如果找到了这样的数,还要继续判断其它的所有数是否都指向它,我们可以统计共有多少个数指向idx,用count记录,如果count===n-1就代表除他自己之外其他数都指向idx
javascript 复制代码
var findJudge = function(n, trust) {
    var set = new Set(),idx,count=0
   for(var arr of trust){
       set.add(arr[0])
   }
   for(var i=1;i<=n;i++){
       if(!set.has(i)){
           idx=i
       }
   }
   if(!idx) return -1
   for(var arr of trust){
        if(arr[1]===idx){
            count++
        }
   }
   if(count===n-1) return idx
   else return -1
};

消耗时间和内存情况:

优化一下:

相信别人自己 --,被别人相信自己++,按照题意法官不会相信别人,并且其他人都相信法官,那么如果存在法官,他的值应该等于n-1

javascript 复制代码
var findJudge = function(n, trust) {
    var arr = new Array(n+1).fill(0)
    for(var item of trust){
        arr[item[0]]--
        arr[item[1]]++
    }
    for(var i=1;i<=n;i++){
        if(arr[i]==n-1){
            return i
        }
    }
    return -1
};

消耗时间和内存情况:

相关推荐
Funny Valentine-js5 小时前
web实验后端php测试文本
前端·javascript·php·html5·cookie·telnet·session
竹杖芒鞋轻胜马,夏天喜欢吃西瓜5 小时前
哈希算法解析
算法·哈希算法
执笔论英雄5 小时前
【RL】 ROLL中负载均衡
运维·算法·负载均衡
星辞树5 小时前
从计数到预测:深入浅出词向量 (Word Vectors) —— Stanford CS224n 作业实战记录
算法
JarryStudy5 小时前
自动调优在Triton-on-Ascend中的应用:从参数优化到性能极致挖掘
人工智能·算法·昇腾·cann·ascend c
CoderYanger5 小时前
递归、搜索与回溯-穷举vs暴搜vs深搜vs回溯vs剪枝:13.子集
java·算法·leetcode·机器学习·剪枝·1024程序员节
DevUI团队5 小时前
解锁前端高阶调试:浏览器/IDE/Git技巧分享
前端·javascript·html
黑客思维者5 小时前
底层冗余性原理探秘模型剪枝(Pruning)为何能“无损”压缩模型?
算法·机器学习·剪枝
CoolerWu5 小时前
Trae Solo 实战指南:从"会用"到"用好"的协作方法论
前端·javascript
疯疯癫癫才自由5 小时前
爬取Leetcode Hot 100 题单
算法·leetcode