[LeetCode] Repeated DNA Sequences
来源:互联网 发布:离散数学 左孝凌 知乎 编辑:程序博客网 时间:2024/06/05 06:19
Repeated DNA Sequences
All DNA is composed of a series of nucleotides abbreviated as A, C, G, and T, for example: "ACGAATTCCG". When studying DNA, it is sometimes useful to identify repeated sequences within the DNA.
Write a function to find all the 10-letter-long sequences (substrings) that occur more than once in a DNA molecule.
For example,
Given s = "AAAAACCCCCAAAAACCCCCCAAAAAGGGTTT",
Return:
All DNA is composed of a series of nucleotides abbreviated as A, C, G, and T, for example: "ACGAATTCCG". When studying DNA, it is sometimes useful to identify repeated sequences within the DNA.
Write a function to find all the 10-letter-long sequences (substrings) that occur more than once in a DNA molecule.
For example,
Given s = "AAAAACCCCCAAAAACCCCCCAAAAAGGGTTT",
Return:
["AAAAACCCCC", "CCCCCAAAAA"].
思路:
1、使用哈希表,键为10个字符,值为出现次数;
2、定义一个res链表,存放符合要求的串;
3、符合要求的串为:在哈希表中出现,并且在res中不存在。
错误思路:全部存储在哈希表中,若哈希表中已存在,则值加1,;再遍历一次哈希表,取出所有值大于1的串 ==> 内存超出限制, Memory Limit Exceeded
public class Solution { public List<String> findRepeatedDnaSequences(String s) { Map<String, Integer> mmap = new HashMap<String, Integer>();List<String> res = new ArrayList<String>() ;for(int i = 0; i < s.length()-9; i ++){String sub = s.substring(i, i + 10) ;if(mmap.containsKey(sub) && !res.contains(sub)) {res.add(sub) ;}else{mmap.put(sub, 1) ;}}return res ; }}
0 0
- Leetcode Repeated DNA Sequences
- Repeated DNA Sequences [leetcode]
- [LeetCode] Repeated DNA Sequences
- Leetcode Repeated DNA Sequences
- Leetcode:Repeated DNA Sequences
- Leetcode: Repeated DNA Sequences
- LeetCode: Repeated DNA Sequences
- LeetCode: Repeated DNA Sequences
- LeetCode Repeated DNA Sequences
- LeetCode--Repeated DNA Sequences
- [LeetCode]Repeated DNA Sequences
- [Leetcode]Repeated DNA Sequences
- [leetcode]Repeated DNA Sequences
- Repeated DNA Sequences - LeetCode
- Leetcode: Repeated DNA Sequences
- Leetcode:Repeated DNA Sequences
- leetcode:Repeated DNA Sequences
- LeetCode - Repeated DNA Sequences
- 面向对象(下)
- Fragment生命周期
- JS 正则校验
- 多线程之线程同步
- ueditor的使用
- [LeetCode] Repeated DNA Sequences
- hdu-1518-Square-深搜+剪枝(同hdu1455)
- SAT2生物考试300个常用词汇
- 九度OJ 题目1000:计算a+b
- 函数柯里化(Currying)
- MySql性能调优(一)字段类型的选取之时间类型
- Canvas:save()和restore()
- Mybatis技术: 实现物理分页
- go语言学习笔记---非入侵式接口设计探究