LeetCode算法心得——k-avoiding 数组的最小总和(标记数组)

大家好,我是晴天学长,这是一个细节题和一部分的思维题哈!



2) .算法思路

k-avoiding 数组的最小总和

1,填充一个1到n 的Boolean的数组

要n个数,但是数组大小不能确定。

所以建立1000的大小。

2.遍历筛选,如果数组中有这个的话,标记为false。

3.监测是否是false,true就sum++(前缀和)。


3).代码示例

java 复制代码
class Solution {
    public int minimumSum(int n, int k) {
            boolean[] temp = new boolean[1000];
            int sum = 0;
            for (int i = 1; i <= k&&i<=n; i++) {
                if (k - i <= temp.length && k - i != i && temp[i] == false) {
                    temp[k - i] = true;
                }
            }
            //前缀和
            int i = 1;
            int j = 0;
            while (true){
                if (temp[i] == false){
                    sum+=i;
                    j++;
                    if (j == n){
                        return sum;
                    }
                }
                i++;
            }
    }
}

4).总结

  • 控制好标记数组的大小。
相关推荐
A boy CDEF girl几秒前
算法题专栏:优选算法
数据结构·算法·leetcode
没落之王7 分钟前
三易五行看宋朝的三界确立
大数据·人工智能·算法
wuminyu29 分钟前
Java字节码学习总结:字节码如何加载、解析和执行
java·linux·c语言·jvm·c++
坤坤子吖42 分钟前
算法学习——单调队列
开发语言·c++·笔记·学习·算法
Flynn Liang1 小时前
大模型怎么自己调函数?Spring AI 2.0 Tool Calling 自动循环原理 + 完整时序图
java·人工智能·spring·agent·函数调用·springai·toolcalling
乌暮2 小时前
请求进门先安检:Spring 拦截器与统一功能实战指南
java·开发语言·后端·学习·spring
学长毕设2 小时前
基于SpringBoot的烘焙商品商品系统-附源码
java·spring boot·后端
Js.Tx2 小时前
【具体数学 Concrete Mathematics】2.1.5 一般性的方法
算法·具体数学
金銀銅鐵3 小时前
[Java] 用纯 Swing 做一个《論語·學而》阅读器
java·ai编程·交互设计
艾伦_耶格宇3 小时前
【kubernetes - 1.28版本】-11 K8S核心组件
java·容器·kubernetes