383. Ransom Note
2017-08-14 20:32
260 查看
383. Ransom Note
DescriptionHintsSubmissionsDiscussSolutionDiscussPick
One
Given an arbitrary ransom note string and another string containing letters from all the magazines, write a function that will return true if the ransom note can be constructed from the magazines ; otherwise, it
will return false.
Each letter in the magazine string can only be used once in your ransom note.
Note:
You may assume that both strings contain only lowercase letters.
canConstruct("a", "b") -> false canConstruct("aa", "ab") -> false canConstruct("aa", "aab") -> true
Seen this question in a real interview before?
题意:
这个题叫绑架信是模仿绑架信的写法我们信中的内容要从杂志上剪出来,所以确保我们信中的每一个字在杂志上都要有
算法思路:
首先先把信和杂志上的每一个字符的出现次数统计在一个数组中然后比较信中的字符出现的次数,如果有大于杂志上的返回失败,否则成功
代码:
package easy; import javax.print.attribute.standard.RequestingUserName; public class RansomNote { public boolean canConstruct(String ransomNote, String magazine) { int[] ran = new int[26]; int[] mag = new int[26]; for(int i=0; i<ransomNote.length(); i++){ ran[ransomNote.charAt(i) - 'a']++; } for(int i=0; i<magazine.length(); i++){ mag[magazine.charAt(i) - 'a']++; } for(int i=0; i<ran.length; i++){ if(ran[i] > mag[i]){ return false; } } return true; } }
相关文章推荐
- Leetcode 383. Ransom Note
- 383. Ransom Note
- LeetCode 383. Ransom Note
- leetcode-383. Ransom Note
- LeetCode-383. Ransom Note
- LeetCode OJ-383. Ransom Note
- leetcode 383. Ransom Note
- LeetCode383. Ransom Note
- leetcode 383. Ransom Note
- 383. Ransom Note
- 383. Ransom Note
- 小白笔记--------------leetcode(383. Ransom Note)
- 383. Ransom Note
- 383. Ransom Note(map容器)
- LeetCode 383. Ransom Note
- LeetCode383. Ransom Note优雅解法(线性时间复杂度)
- 383. Ransom Note
- Leetcode383. Ransom Note
- LeetCode解题报告 383. Ransom Note [easy]
- 383. Ransom Note 难度:easy