力扣【算法学习day.50】

前言

###我做这类文章一个重要的目的还是给正在学习的大家提供方向和记录学习过程(例如想要掌握基础用法,该刷哪些题?)我的解析也不会做的非常详细,只会提供思路和一些关键点,力扣上的大佬们的题解质量是非常非常高滴!!!


习题

1.仅含置位位的最小整数

题目链接: 仅含置位位的最小整数 - 力扣(LeetCode)

题面:

代码:

java 复制代码
class Solution {
    public int smallestNumber(int n) {
        int len = (int)(Math.log(n)/Math.log(2))+1;
        return (1<<len)-1;
    }
}

2.识别数组中的最大异常值

题目链接: 识别数组中的最大异常值 - 力扣(LeetCode)

题面:

代码:

java 复制代码
class Solution {
    public int getLargestOutlier(int[] nums) {
       Map<Integer,Integer> map = new HashMap<>();
        int n = nums.length;
        int sum  = 0;
        for(int i = 0;i<n;i++){
            sum+=nums[i];
           map.merge(nums[i],1,Integer::sum);
        }
        int ans = Integer.MIN_VALUE;
        for(int i = 0;i<n;i++){
            int flag = sum-nums[i];
            // System.out.println(flag);
            if((flag%2==0)&&map.getOrDefault(flag/2,-1)!=-1&&((flag/2)!=nums[i]||map.get(flag/2)>1)){
                ans = Math.max(ans,nums[i]);
            }
        }
        return ans;
    }
}

共勉!!!

相关推荐
晴天163 分钟前
Electron面试题-Day19
java·javascript·electron
Titan202413 分钟前
Linux网络基础知识
linux·服务器·网络·c++·学习
m4Rk_24 分钟前
【论文阅读】Agent 记忆机制(41):Agentic Plan Caching——将历史执行轨迹转化为可复用的计划记忆
论文阅读·人工智能·学习·开源·github
woshihuanglaoshi29 分钟前
错题四科入库:鸿蒙错题本种子数据与复习队列效果
学习·华为·harmonyos·鸿蒙
GeekZHR38 分钟前
C语言指针进阶补充6:动态内存管理、mem系列内存函数、复杂指针声明,一次补齐指针的“三大盲区“
java·c语言·算法·指针
hsjiasb43 分钟前
FreeRTOS学习(二十九)——低功耗Tickless Idle
学习·学习笔记·freertos
侧耳倾听1111 小时前
java 日志框架简介
java·开发语言
.道阻且长.1 小时前
8.LeetCode算法习题讲解--滑动窗口--长度最小的子数组
算法·leetcode·职场和发展
(❁´◡`❁)Jimmy(❁´◡`❁)1 小时前
P1156 [USACO01OPEN] 垃圾陷阱
算法·动态规划
她的男孩1 小时前
我用 LLM 把后台 CRUD 效率提升 10 倍:AI 代码生成器的架构与落地实践
java·后端·架构