Leetcode 187 Repeated DNA Sequences
来源:互联网 发布:二维数组赋值 编辑:程序博客网 时间:2024/06/14 02:18
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"].
基本思路就是利用hash的方法求出对用10 character的value
每一个字母分配一个对应的初始值
public class Solution { public List<String> findRepeatedDnaSequences(String s) { Set<Integer> firstTime = new HashSet<>(); Set<Integer> secondTime = new HashSet<>(); List<String> results = new ArrayList<>(); int[] word = new int[26]; word['A' - 'A'] = 0; word['C' - 'A'] = 1; word['G' - 'A'] = 2; word['T' - 'A'] = 3; for(int i = 0; i < s.length() - 9; i++){ int value = 0; for(int j = 0; j < i + 10; j++){ value <<=2; value |= word[s.charAt(j) - 'A'];//注意这一步hashing } if(!firstTime.contains(value)){ firstTime.add(value); }else if(!secondTime.contains(value)){ secondTime.add(value); results.add(s.substring(i, i + 10)); } } return results; }}
阅读全文
0 0
- leetcode 187: Repeated DNA Sequences
- LeetCode #187Repeated DNA Sequences
- Leetcode 187 Repeated DNA Sequences
- LeetCode(187)Repeated DNA Sequences
- leetcode 187: Repeated DNA Sequences
- [leetcode] 187 Repeated DNA Sequences
- LeetCode 187 Repeated DNA Sequences
- LeetCode 187 Repeated DNA Sequences
- leetcode(187):Repeated DNA Sequences
- LeetCode #187: Repeated DNA Sequences
- LeetCode[187] Repeated DNA Sequences
- [leetcode][187]Repeated DNA Sequences
- Leetcode 187 Repeated DNA Sequences
- Leetcode 187 Repeated DNA Sequences
- LeetCode.187 Repeated DNA Sequences
- Leetcode Repeated DNA Sequences
- Repeated DNA Sequences [leetcode]
- [LeetCode] Repeated DNA Sequences
- 深入理解io
- ElasticSearch安装配置
- [最大团 随机化 || 二分图最大独立集] BZOJ 4080 [Wf2014]Sensor Network
- C语言应用题——谁是凶手?
- linux下的路径
- Leetcode 187 Repeated DNA Sequences
- Hbase 介绍
- Android-Activity页面之间的数据传递
- 最近和未来要做的事
- Html中display为inline-block的元素有内容和没有内容情况下高度不一致问题的讨论
- c++ builder 中的 XMLDocument 类详解(10) -判断节点类型: 支节点、叶节点、文本节点、空节点
- c++ builder 中的 XMLDocument 类详解(11) -读取和设置版本号
- linux基础入门之who命令
- 元素绑定事件的三种 方法