首页 > 其他分享 >面试经典 150 题 (十六)

面试经典 150 题 (十六)

时间:2024-02-08 17:55:05浏览次数:27  
标签:150 ratings int ++ 十六 candyNum 面试 length total

class Solution {
    public int candy(int[] ratings) {
        //从左侧和右侧分别扫描一遍,计算当前孩子是否是比两侧的孩子优秀
        int length = ratings.length;
        int[] candyNum = new int[length];
        for (int i = 0; i < length; i++){
            candyNum[i] = 1;
        }
        for (int i = 1; i < length; i++){
            if (ratings[i - 1] < ratings[i]){
                candyNum[i] = candyNum[i - 1] + 1;
            }
        }
        for (int i = length - 2; i >= 0; i--){
            if (ratings[i + 1] < ratings[i] && candyNum[i + 1] >= candyNum[i] ){
                candyNum[i] = candyNum[i + 1] + 1;
            }
        }
        int total = 0;
        for (int i = 0; i < length; i++){
            total += candyNum[i];
        }
        return total;
    }
}

标签:150,ratings,int,++,十六,candyNum,面试,length,total
From: https://www.cnblogs.com/poteitoutou/p/18011983

相关文章

  • 面试经典 150 题 (十五)
    画折线图,亏空最严重的一步要最后一步做,等着前面的增益补(总体收益大于等于0的情况),因为本题有解就唯一,当总gas大于总cost一定有解classSolution{publicintcanCompleteCircuit(int[]gas,int[]cost){intlen=gas.length;intspare=0;......
  • 【视频】互联网Java工程师面试突击训练(三季)
    视频下载地址 https://pan.quark.cn/s/c17e3da33a76目录一、Java集合包HashMap的底层数据结构是什么?JDK1.8中对hash算法和寻址算法是如何优化的?03.HashMap是如何解决hash碰撞问题的?04.说说HashMap是如何进行扩容的?05.ArrayList,LinkedList,TreeMap,LinkedHashMap,HashSet等底层......
  • 面试经典 150 题 (十四)
    就用除法classSolution{publicint[]productExceptSelf(int[]nums){int[]answer=newint[nums.length];intsum=1;intzeroNum=0;for(inti=0;i<nums.length;i++){if(nums[i]==0)zeroNum++;......
  • 面试经典 150 题 (十三)
    先来个大的classRandomizedSet{privateHashSet<Integer>hashSet;publicRandomizedSet(){hashSet=newHashSet<Integer>();}publicbooleaninsert(intval){if(hashSet.contains(val)){returnfa......
  • 【面试突击】网络通信面试实战
    网络通信面试实战Socket工作原理Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口,其实就是一个门面模式,将底层复杂的通信操作给封装起来对外提供接口。简单来说就是Socket把TPC/IP协议给封装了起来,我们的程序进行网络通信都是通过Socket来完成的!也就是说当......
  • 面试经典 150 题 (十二)
    排序,i代表至少发表的论文数量时间复杂度:O(nlogn)空间复杂度:O(logn)classSolution{publicinthIndex(int[]citations){//01356intlength=citations.length;Arrays.sort(citations);inth=0;for(inti=1......
  • 解锁阿里巴巴面试题:创建线程的几种方式?
    大家好,我是小米!今天我们来聊一个热门话题——阿里巴巴面试题:创建线程的几种方式。在技术的海洋中,线程是我们编程航程中的一艘不可或缺的船,驶向程序的未知领域。那么,究竟有哪些方式可以创建线程呢?让我们一起揭开这个技术的神秘面纱!实现Runnable接口首先,我们来说说最常见、最推荐的方......
  • C语言解题 || 公务员面试
    题目:公务员面试现场打分。有7位考官,从键盘输入若干组成绩,每组7个分数(百分制),去掉一个最分和一个最低分,输出每组的平均成绩。(注:本题有多组输入)输入描述:每一行,输入7个整数(0~100),代表7个成绩,用空格分隔。输出描述:每一行,输出去掉最高分和最低分的平均成绩,小数点后保留2位......
  • 面试经典:Java中list set map之间的区别
    前言大家好,我是chowley,最近正在复习Java集合,这次来总结一下list、set、map它们三个之间的区别。1.List(列表)定义:List是一种有序集合,允许存储重复元素,每个元素都有一个索引,可以按照插入顺序获取。特点:允许存储重复元素。有序集合,保留元素的插入顺序。可以通过索引访问元素。常见实现......
  • 面试经典 150 题 (十一)
    classSolution{publicintjump(int[]nums){if(nums.length<=1)return0;//记录每次起跳所能跳到的最远的距离intfarestIndex=0;intmaxIndex=0;intstart=0;inttimes=0;while(true){......