public class Solution {
public List
findRepeatedDnaSequences(String s) {
List
ans = new ArrayList
();
HashSet
set = new HashSet
();
for(int i=0; i<=s.length()-10; i++){
String substr = s.substring(i,i+10);
if(!set.contains(substr)){
set.add(substr);
}else if(set.contains(substr) && !ans.contains(substr)){
ans.add(substr);
}
}
return ans;
}
public int hashStr(String s){
int res = 0;
for(int i=0;i
<< 2 | hashChar(c); } return res; } public int hashChar(char c){ switch(c){ case 'A': return 0; case 'C': return 1; case 'G': return 2; case 'T': return 3; default: return 0; } } }
[LeetCode]Repeated DNA Sequence
最新推荐文章于 2020-09-24 22:58:54 发布
本文介绍了一个Java程序,用于找出所有在长度为10的DNA序列中出现多于一次的序列。通过使用HashSet来记录已遍历过的子串,并将重复出现的子串加入到结果列表中。
760

被折叠的 条评论
为什么被折叠?



