每日三题-跳跃游戏、根据身高重建队列、任务调度器

简介: 每日三题跳跃游戏根据身高重建队列任务调度器

跳跃游戏


b8e73eb0191d476582d0ffda75ff2704.png

解法一

贪心

class Solution {
    public boolean canJump(int[] nums) {
        int maxPosition = 0;
        for(int i = 0;i < nums.length;i++){
            // maxPosition 为到目前为止能够到最右边的距离
            if(i > maxPosition) return false;
            maxPosition = Math.max(maxPosition,i + nums[i]);            
            if(maxPosition >= nums.length-1) return true;
        }
        return false;
    }
}


根据身高重建队列


93a27377deb147158c50a397a41b78c9.png

class Solution {
    public int[][] reconstructQueue(int[][] people) {
        Arrays.sort(people,(int[] p1,int p2[])->{
            if(p1[0] != p2[0]) return p2[0] - p1[0];
            return p1[1] - p2[1];
        });
        List<int []> res = new ArrayList<int[]>();
        for(int[] p : people){
            res.add(p[1],p);
        }
        return res.toArray(new int[people.length][2]);
    }
}


任务调度器


0b96a2131ff74277ac5b5d5fd57a27f7.png

class Solution {
    public int leastInterval(char[] tasks, int n) {
        int [] task = new int[26];
        for(int i = 0;i < tasks.length;i++){
            task[tasks[i]-'A']++;
        }
        int max = 0;
        int maxCount = 0;
        for(int i = 0;i < 26;i++){
            if(task[i] > max){
                max = task[i];
                maxCount = 1;
            }else if(task[i] == max){
                maxCount++;
            }
        }
        return Math.max(tasks.length,(max-1)*(n+1)+maxCount);
    }
}
相关文章
|
6月前
|
算法 Java
算法编程(三十):交替合并字符串
算法编程(三十):交替合并字符串
92 0
|
6月前
|
Java 索引
leetcode-406:根据身高重建队列
leetcode-406:根据身高重建队列
50 0
|
算法 机器人 C语言
【二分查找】分巧克力、机器人跳跃、数的范围
开始准备蓝桥杯啦!这是计划的一部分,每天都会更新一个专题的内容,内容参考自acwing蓝桥杯辅导课,有兴趣的uu们也可以自行观看
110 0
|
6月前
【错题集-编程题】孩子们的游戏(圆圈中最后剩下的数)(约瑟夫环)
【错题集-编程题】孩子们的游戏(圆圈中最后剩下的数)(约瑟夫环)
|
6月前
|
算法 测试技术 C#
【树上倍增】【内向基环树】【 图论 】2836. 在传球游戏中最大化函数值
【树上倍增】【内向基环树】【 图论 】2836. 在传球游戏中最大化函数值
|
6月前
|
机器学习/深度学习 算法 测试技术
【单源最短路 图论】3112. 访问消失节点的最少时间
【单源最短路 图论】3112. 访问消失节点的最少时间
算法训练Day35|860.柠檬水找零 ● 406.根据身高重建队列 ● 452. 用最少数量的箭引爆气球
算法训练Day35|860.柠檬水找零 ● 406.根据身高重建队列 ● 452. 用最少数量的箭引爆气球
|
机器学习/深度学习 传感器 数据采集
【信号处理教程】基于倒谱图判断浊音的基音周期附MATLAB代码
【信号处理教程】基于倒谱图判断浊音的基音周期附MATLAB代码
LeetCode 406. 根据身高重建队列
假设有打乱顺序的一群人站成一个队列,数组 people 表示队列中一些人的属性(不一定按顺序)。
83 0
LeetCode:406. 根据身高重建队列
LeetCode:406. 根据身高重建队列
87 0
LeetCode:406. 根据身高重建队列