Leetcode-day28-贪心算法

加油站

暴力解法

```

```

贪心算法

贪心的思路是:curSum也就是当前剩余的油量如果小于0了,说明只能从i+1开始走。如果totalSum最终小于0,怎么走都无解。而且题目中说如果是有解,唯一解

复制代码
class Solution {
    public int canCompleteCircuit(int[] gas, int[] cost) {
        int curSum = 0;
        int totalSum = 0;
        int start = 0;
        for(int i=0;i<cost.length;i++){
            curSum += gas[i] - cost[i];
            totalSum += gas[i] - cost[i];
            if(curSum<0){
                start = i+1;
                curSum=0;
            }
        }
        if(totalSum<0){
        return -1;}
        return start;
        
    }
相关推荐
Old Uncle Tom1 分钟前
提示词编写规范
数据库·算法
火山口车神丶4 分钟前
如何借助AI进行模块封装DIY
javascript·人工智能·算法
MegaDataFlowers9 分钟前
15.三数之和
算法
贾斯汀玛尔斯1 小时前
每天学一个算法--一致性哈希(Consistent Hashing)
算法·哈希算法
无限进步_1 小时前
C++ 继承机制完全解析:从基础原理到菱形继承问题
java·开发语言·数据结构·c++·vscode·后端·算法
superior tigre1 小时前
45 跳跃游戏2
算法·leetcode·游戏
不知名的忻2 小时前
并查集(QuickUnion)
java·数据结构·算法·并查集
leo__5202 小时前
基于时延的麦克风声源定位 - C实现
c语言·开发语言·算法
攻防_SRC2 小时前
面向分组密码差分故障分析的属性推导与验证平台
人工智能·算法·机器学习
likerhood2 小时前
Java实现选择题选项乱序算法
java·开发语言·算法