LeetCode 383 赎金信

Posted Sivan_Xin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode 383 赎金信相关的知识,希望对你有一定的参考价值。

 今天是Sivan坚持写题解的第13天。


解题思路

先将数组排序,之后对比ransomNote和magazine,一位一位向后找。

C语言代码实现

int cmp1(const void* e1, const void* e2);
bool canConstruct(char* ransomNote, char* magazine) 
    int lenr = strlen(ransomNote);
    int lenm = strlen(magazine);
    int i, j;
    i = 0;
    j = 0;
    int flag = 0;
    qsort(ransomNote, lenr, sizeof(char), cmp1);
    qsort(magazine, lenm, sizeof(char), cmp1);    //将两个数组排序
    while (j < lenm) 
        if (ransomNote[i] == magazine[j]) 
            i++;
            j++;
            flag++;
        
        if (ransomNote[i] != magazine[j]) 
            j++;
        
    
    if (flag >= lenr) 
        return true;
    
    else 
        return false;
    
    return 0;

int cmp1(const void* e1, const void* e2) 
    return strcmp((char*)e1, (char*)e2);

最后,码字不易,如果觉得写的不错的话可以点个赞或者关注一下作者。

以上是关于LeetCode 383 赎金信的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode:383. 赎金信————简单

LeetCode 383 赎金信[数组] HERODING的LeetCode之路

每日leetcode-数组-383. 赎金信

LeetCode 383. 赎金信 / 372. 超级次方 / 1816. 截断句子

Leetcode刷题100天—383. 赎金信( 数组)—day79

Leetcode刷题100天—383. 赎金信(字符串)—day27