首页 > 编程语言 >#yyds干货盘点# LeetCode程序员面试金典:赎金信

#yyds干货盘点# LeetCode程序员面试金典:赎金信

时间:2024-01-01 23:33:08浏览次数:26  
标签:ransomNote yyds cnt false 示例 金典 magazine return LeetCode

给你两个字符串:ransomNote 和 magazine ,判断 ransomNote 能不能由 magazine 里面的字符构成。

如果可以,返回 true ;否则返回 false 。

magazine 中的每个字符只能在 ransomNote 中使用一次。

 

示例 1:

输入:ransomNote = "a", magazine = "b"
输出:false

示例 2:

输入:ransomNote = "aa", magazine = "ab"
输出:false

示例 3:

输入:ransomNote = "aa", magazine = "aab"
输出:true

class Solution {
    public boolean canConstruct(String ransomNote, String magazine) {
        if (ransomNote.length() > magazine.length()) {
            return false;
        }
        int[] cnt = new int[26];
        for (char c : magazine.toCharArray()) {
            cnt[c - 'a']++;
        }
        for (char c : ransomNote.toCharArray()) {
            cnt[c - 'a']--;
            if(cnt[c - 'a'] < 0) {
                return false;
            }
        }
        return true;
    }
}


标签:ransomNote,yyds,cnt,false,示例,金典,magazine,return,LeetCode
From: https://blog.51cto.com/u_13321676/9058683

相关文章

  • #yyds干货盘点# LeetCode程序员面试金典:按权重随机选择
    题目给你一个下标从0开始的正整数数组w,其中w[i]代表第i个下标的权重。请你实现一个函数pickIndex,它可以随机地从范围[0,w.length-1]内(含0和w.length-1)选出并返回一个下标。选取下标i的概率为w[i]/sum(w)。例如,对于w=[1,3],挑选下标0的概率......
  • leetcode 2.两数相加
    leetcode第二题:两数相加以链表为载体模仿加法进位,同时遍历两个链表,逐位计算它们的和,并与当前位置的进位值相加。如果两个链表的长度不同,则可以认为长度短的链表的后面有若干个0。如果链表遍历结束后,有carry>0,还需要在答案链表的后面附加一个节点,节点的值为carry。易错点:1.......
  • leetcode 1.两数之和
    leetcode第一题:两数之和1.暴力枚举:最容易想到的方法是枚举数组中的每一个数x,寻找数组中是否存在target-x。当我们使用遍历整个数组的方式寻找target-x时,需要注意到每一个位于x之前的元素都已经和x匹配过,因此不需要再进行匹配。而每一个元素不能被使用两次,所以我们......
  • LeetCode 刷题集锦
    目录1.  1108.IP地址无效化2.  1093.大样本统计3.  888.公平的糖果交换4.  445.两数相加II 1.  1108.IP地址无效化题目链接1108.IP地址无效化题目描述解题思路替换. 为[.], 如果使用 Java 最好使用 stringBuilder, 而且可以使用 string 封装好的 ......
  • leetcode 2706 购买两块巧克力
    题目: 2706购买两块巧克力思路:找两个最小值。分情况讨论 代码classSolution:defbuyChoco(self,prices:List[int],money:int)->int:#遍历一遍,找2个最小值#找一个最小值我们都会。#找次小值,就分两种情况,假设minPrice是最小......
  • 在不使用内置函数和中间变量的情况交换数字LeetCode力扣题解面试题16.01
    #异或法#Kotlin```KotlinclassSolution{  funswapNumbers(numbers:IntArray):IntArray{    numbers[0]=numbers[0]xornumbers[1]    numbers[1]=numbers[1]xornumbers[0]    numbers[0]=numbers[0]xor......
  • # yyds干货盘点 # 盘点一个Python自动化办公实战案例(四)
    大家好,我是皮皮。一、前言前几天在Python最强王者交流群【钟爱一生】问了一个Python自动化办公的问题,一起来看看吧。【温馨提示】遇到表达不清的,能稍微描述下,想要达成的结果吗?在excel上,或者画图也行。最好是把你想要的结果展示在excel中,另外,你展示的这个表格最好做个小的demo发上来......
  • [LeetCode] 1578. Minimum Time to Make Rope Colorful
    Alicehasnballoonsarrangedonarope.Youaregivena0-indexedstringcolorswherecolors[i]isthecoloroftheithballoon.Alicewantstheropetobecolorful.Shedoesnotwanttwoconsecutiveballoonstobeofthesamecolor,sosheasksBobfor......
  • [LeetCode Hot 100] LeetCode102. 二叉树的层序遍历
    题目描述思路方法一:递归/***Definitionforabinarytreenode.*publicclassTreeNode{*intval;*TreeNodeleft;*TreeNoderight;*TreeNode(){}*TreeNode(intval){this.val=val;}*TreeNode(intval,TreeNodelef......
  • [LeetCode Hot 100] LeetCode543. 二叉树的直径
    题目描述思路所谓二叉树的直径,就是左右子树的最大深度之和。方法一:/***Definitionforabinarytreenode.*publicclassTreeNode{*intval;*TreeNodeleft;*TreeNoderight;*TreeNode(){}*TreeNode(intval){this.val=va......