Repeated DNA Sequences
来源:互联网 发布:韶关市政府网络问政 编辑:程序博客网 时间:2024/06/11 16:37
public class Solution { public List<String> findRepeatedDnaSequences(String s) { List<String> result = new ArrayList<String>(); if (s == null || s.length() < 10) { return result; } Map<Character, Integer> map = new HashMap<Character, Integer>(); map.put('A', 0); map.put('C', 1); map.put('G', 2); map.put('T', 3); Set<Integer> cache = new HashSet<Integer>(); Set<Integer> duplicate = new HashSet<Integer>(); int seq = 0; for (int i = 0; i < s.length(); i++) { if (i < 9) { seq = (seq << 2) + map.get(s.charAt(i)); } else { seq = (seq << 2) + map.get(s.charAt(i)); seq = seq & ((1 << 20) - 1); if (cache.contains(seq) && !duplicate.contains(seq)) { duplicate.add(seq); result.add(s.substring(i - 9, i + 1)); } else if (!cache.contains(seq)) { cache.add(seq); } } } return result; }}
0 0
- Leetcode Repeated DNA Sequences
- Repeated DNA Sequences [leetcode]
- Repeated DNA Sequences
- Repeated DNA Sequences
- [LeetCode] Repeated DNA Sequences
- Repeated DNA Sequences
- Leetcode Repeated DNA Sequences
- Leetcode:Repeated DNA Sequences
- Leetcode: Repeated DNA Sequences
- Repeated DNA Sequences (Java)
- 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]Repeated DNA Sequences
- 2012年5月SAT香港真题解析
- 计划两个月刷刷 OReilly.Introducing.Python
- Linux学习线路图
- Plus One
- CSS一些基础知识整理
- Repeated DNA Sequences
- Android fragment 切换加载数据卡顿问题
- 数据库是否应该应用外键的一点思考
- navicat for mysql report 使用
- 流程图一:Setting中用到的的流程图
- Java 策略设计模式
- 关于Oracle10g监听服务不能启动的问题
- AVPlayer视频播放的使用简介
- Kinect for Windows SDK开发入门(十九):Kinect Fusion