每日一题——LeetCode1189.气球的最大数量

这篇具有很好参考价值的文章主要介绍了每日一题——LeetCode1189.气球的最大数量。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

每日一题——LeetCode1189.气球的最大数量,每日一题,javascript,leetcode,算法

方法一 个人方法:

统计text字符串中'b'、'a'、'l'、'o'、'n' 这几个字符出现的次数

l和n需要两个才能拼成一个balloon,所以碰到l和o加1,其他字符加2

最后求出出现次数最少的那个字符再除以2就是能拼凑成的单词数量,避免出现小数要使用向下取整

var maxNumberOfBalloons = function(text) {
    var arr={b:0,a:0,l:0,o:0,n:0},min=9999
    for(const char of text){
        if(arr[char]>=0){
           if(char=='l' || char=='o'){
               arr[char]++
           }else{
               arr[char]+=2
           }
        }
    }
    for(const char in arr){
        min=arr[char]<min?arr[char]:min
    }
    console.log(arr,min)
    min=Math.floor(min/2)
    return min
};

消耗时间和内存情况:

每日一题——LeetCode1189.气球的最大数量,每日一题,javascript,leetcode,算法

方法二 统计法

思路和方法一差不多,但写法有区别

var maxNumberOfBalloons = function(text) {
    const cnt = new Array(5).fill(0);
    for (const ch of text) {
        if (ch === 'b') {
            cnt[0]++;
        } else if (ch === 'a') {
            cnt[1]++;
        } else if (ch === 'l') {
            cnt[2]++;
        } else if (ch === 'o') {
            cnt[3]++;
        } else if (ch === 'n') {
            cnt[4]++;
        }
    }
    cnt[2] = Math.floor(cnt[2] / 2);
    cnt[3] = Math.floor(cnt[3] / 2);
    return _.min(cnt);
};

消耗时间和内存情况:

每日一题——LeetCode1189.气球的最大数量,每日一题,javascript,leetcode,算法文章来源地址https://www.toymoban.com/news/detail-789125.html

到了这里,关于每日一题——LeetCode1189.气球的最大数量的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Leetcode】【每日一题】【中等】1465. 切割后面积最大的蛋糕

    力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 备战技术面试?力扣提供海量技术面试资源,帮助你高效提升编程技能,轻松拿下世界 IT 名企 Dream Offer。 https://leetcode.cn/problems/maximum-area-of-a-piece-of-cake-after-horizontal-and-vertical-cuts/description/?envType=daily-questionenvId=2023-10-27 矩形

    2024年02月07日
    浏览(36)
  • LeetCode每日一题——1691. 堆叠长方体的最大高度

    题目: 828. 统计子串中的唯一字符 难度: 困难 给你 n 个长方体 cuboids ,其中第 i 个长方体的长宽高表示为 cuboids[i] = [widthi, lengthi, heighti](下标从 0 开始)。请你从 cuboids 选出一个 子集 ,并将它们堆叠起来。 如果 widthi = widthj 且 lengthi = lengthj 且 heighti = heightj ,你就可以将

    2024年02月10日
    浏览(38)
  • LeetCode每日一题——813. 最大平均值和的分组

    题目: 813. 最大平均值和的分组 难度: 普通 给定数组 nums 和一个整数 k 。我们将给定的数组 nums 分成 最多 k 个相邻的非空子数组 。 分数 由每个子数组内的平均值的总和构成。 注意我们必须使用 nums 数组中的每一个数进行分组,并且分数不一定需要是整数。 返回我们所能

    2024年02月13日
    浏览(37)
  • ( 数组和矩阵) 485. 最大连续 1 的个数 ——【Leetcode每日一题】

    难度:简单 给定一个二进制数组 nums , 计算其中最大连续 1 的个数。 示例 1: 输入:nums = [1,1,0,1,1,1] 输出:3 解释:开头的两位和最后的三位都是连续 1 ,所以最大连续 1 的个数是 3. 示例 2: 输入:nums = [1,0,1,1,0,1] 输出:2 提示: 1 = n u m s . l e n g t h = 1 0 5 1 = nums.length = 10^5

    2024年02月08日
    浏览(46)
  • 每日一题——LeetCode1299.将每个元素替换为右侧最大元素

    方法一 个人方法:  题目意思就是求在i=1;i++的循环条件下,arr[i]-arr[arr.length-1]的最大值分别为多少,最后一项默认为-1 用slice方法可以每次把数组第一位去除,得到求最大值的目标数组 Math的max方法可以直接返回数组里的最大值 但是不能每次循环都求一遍目标数组的最大值,

    2024年01月23日
    浏览(56)
  • 2023-08-22 LeetCode每日一题(到最近的人的最大距离)

    点击跳转到题目位置 给你一个数组 seats 表示一排座位,其中 seats[i] = 1 代表有人坐在第 i 个座位上,seats[i] = 0 代表座位 i 上是空的( 下标从 0 开始 )。 至少有一个空座位,且至少有一人已经坐在座位上。 亚历克斯希望坐在一个能够使他与离他最近的人之间的距离达到最大

    2024年02月11日
    浏览(53)
  • (动态规划) 剑指 Offer 42. 连续子数组的最大和 ——【Leetcode每日一题】

    难度:简单 输入一个整型数组,数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。 要求时间复杂度为 O(n) 。 示例1: 输入: nums = [-2,1,-3,4,-1,2,1,-5,4] 输出: 6 解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。 提示 : 1 = a r r . l e n g t h = 1 0 5 1 = arr.length = 10^

    2024年02月11日
    浏览(53)
  • 2023-05-15LeetCode每日一题(按列翻转得到最大值等行数)

    点击跳转到题目位置 给定 m x n 矩阵 matrix 。 你可以从中选出任意数量的列并翻转其上的 每个 单元格。(即翻转后,单元格的值从 0 变成 1,或者从 1 变为 0 。) 返回 经过一些翻转后,行与行之间所有值都相等的最大行数 (1) 首先思考一个问题,如果光给 一行元素 的话,那

    2024年02月05日
    浏览(38)
  • Leetcode452. 用最少数量的箭引爆气球

    题目来源:452. 用最少数量的箭引爆气球 题解:用最少数量的箭引爆气球 我们首先随机地射出一支箭,再看一看是否能够调整这支箭地射出位置,使得我们可以引爆更多数目的气球。 如图 1-1 所示,我们随机射出一支箭,引爆了除红色气球以外的所有气球。我们称所有引爆的

    2024年02月06日
    浏览(40)
  • Leetcode每日一题:849. 到最近的人的最大距离(2023.8.22 C++)

    目录 849. 到最近的人的最大距离 题目描述: 实现代码与解析: 双指针 原理思路:         给你一个数组  seats  表示一排座位,其中  seats[i] = 1  代表有人坐在第  i  个座位上, seats[i] = 0  代表座位  i  上是空的( 下标从 0 开始 )。 至少有一个空座位,且至少有一

    2024年02月11日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包