leetcode187. 重复的DNA序列
所有 DNA 都由一系列缩写为 A,C,G 和 T 的核苷酸组成,例如:“ACGAATTCCG”。在研究 DNA 时,识别 DNA 中的重复序列有时会对研究非常有帮助。
编写一个函数来查找 DNA 分子中所有出现超过一次的 10 个字母长的序列(子串)。
 
示例:
输入:s = "AAAAACCCCCAAAAACCCCCCAAAAAGGGTTT"
输出:["AAAAACCCCC", "CCCCCAAAAA"]
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/repeated-dna-sequences
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
解答:
对于这道题,看到10个字符的字串,感觉就特别像是滑动窗口的题目,用10为窗口,然后向右滑动,又需要记录字串出现的次数,所以再用一个map记录保存个数,遍历完成以后,再遍历一遍map得到所有字串的出现次数就得到结果。
 1 class Solution {
 2     public List<String> findRepeatedDnaSequences(String s) {
 3         List<String> res=new ArrayList<>();
 4         if(s==null||s.length()<=10)
 5             return res;
 6         HashMap<String,Integer> map=new HashMap<>();
 7         for(int i=9;i<s.length();i++)
 8         {
 9             String str=s.substring(i-9,i+1);
10             if(map.containsKey(str))
11                 map.put(str,map.get(str)+1);
12             else
13                 map.put(str,1);
14         }
15         for(Map.Entry<String ,Integer> entry:map.entrySet())
16         {
17             if(entry.getValue()>1)
18                 res.add(entry.getKey());
19         }
20         return res;
21     }
22 }
leetcode187. 重复的DNA序列的更多相关文章
- [Swift]LeetCode187. 重复的DNA序列 | Repeated DNA Sequences
		
All DNA is composed of a series of nucleotides abbreviated as A, C, G, and T, for example: "ACG ...
 - LeetCode 187. 重复的DNA序列(Repeated DNA Sequences)
		
187. 重复的DNA序列 187. Repeated DNA Sequences 题目描述 All DNA is composed of a series of nucleotides abbrev ...
 - Leetcode 187.重复的DNA序列
		
重复的DNA序列 所有 DNA 由一系列缩写为 A,C,G 和 T 的核苷酸组成,例如:"ACGAATTCCG".在研究 DNA 时,识别 DNA 中的重复序列有时会对研究非常有帮 ...
 - Java实现 LeetCode 187 重复的DNA序列
		
187. 重复的DNA序列 所有 DNA 都由一系列缩写为 A,C,G 和 T 的核苷酸组成,例如:"ACGAATTCCG".在研究 DNA 时,识别 DNA 中的重复序列有时会对 ...
 - Q200510-02-02: 重复的DNA序列 SQL解法
		
重复的DNA序列所有 DNA 都由一系列缩写为 A,C,G 和 T 的核苷酸组成,例如:“ACGAATTCCG”.在研究 DNA 时,识别 DNA 中的重复序列有时会对研究非常有帮助. 编写一个函数来 ...
 - Q200510-02: 重复的DNA序列 程序解法
		
问题: 重复的DNA序列 所有 DNA 都由一系列缩写为 A,C,G 和 T 的核苷酸组成,例如:“ACGAATTCCG”.在研究 DNA 时,识别 DNA 中的重复序列有时会对研究非常有帮助. 编 ...
 - [LeetCode] Repeated DNA Sequences 求重复的DNA序列
		
All DNA is composed of a series of nucleotides abbreviated as A, C, G, and T, for example: "ACG ...
 - [LeetCode] 187. Repeated DNA Sequences 求重复的DNA序列
		
All DNA is composed of a series of nucleotides abbreviated as A, C, G, and T, for example: "ACG ...
 - Leetcode187. Repeated DNA Sequences重复的DNA序列
		
所有 DNA 由一系列缩写为 A,C,G 和 T 的核苷酸组成,例如:"ACGAATTCCG".在研究 DNA 时,识别 DNA 中的重复序列有时会对研究非常有帮助. 编写一个函数 ...
 
随机推荐
- Qlik Sense插件及QRS接口补充
			
date: 2019-10-18 09:10:00 updated: 2019-10-18 15:18:00 Qlik Sense插件及QRS接口补充 1.插件 1.1 获取数据方式 理论上 Engi ...
 - Spark执行失败时的一个错误分析
			
错误分析 堆栈信息中有一个错误信息:Job aborted due to stage failure: Task 1 in stage 2.0 failed 4 times, most recent ...
 - 最全总结 | 聊聊 Python 办公自动化之 Excel(上)
			
1. 前言 在我们日常工作中,经常会使用 Word.Excel.PPT.PDF 等办公软件 但是,经常会遇到一些重复繁琐的事情,这时候手工操作显得效率极其低下:通过 Python 实现办公自动化变的很 ...
 - 并发编程——多线程计数的更优解:LongAdder原理分析
			
前言 最近在学习ConcurrentHashMap的源码,发现它采用了一种比较独特的方式对map中的元素数量进行统计,自然是要好好研究一下其原理思想,同时也能更好地理解ConcurrentHashMa ...
 - SpringBoot第三集:热部署与单元测试(2020最新最易懂)
			
SpringBoot第三集:热部署与单元测试(2020最新最易懂) 有兴趣的可以先参考附录简单了解SpringBoot自动装配流程. 一.SpringBoot开发热部署 项目开发中,你是否也遇到更新配 ...
 - 4G DTU的应用场景介绍
			
4G DTU因为信号要比传统的gprs网络要好,目前已经被广泛应用于物联网产业链中的M2M行业,以远向4G DTU LTE-520为例,它的应用场景如智能电网.智能交通.智能家居.金融.移动 POS ...
 - Django项目之打分系统
			
打分系统 关注公众号"轻松学编程"了解更多. 项目GitHub地址:https://github.com/liangdongchang/VoteSys.git 1.开发需求 a. ...
 - 文件流转blob并播放
			
axios 这里是请求了个mp3做例子: this.$axios({ methods:"GET", url:"/api/music/soures/双笙.mp3" ...
 - Java_多线程实现
			
一个类两个接口 Tread类: 使用时继承Thread类 Runnable接口: 使用时实现Runnable接口 Callable接口: 使用时实现Callable接口 由于类只能单继承, 接口可以多 ...
 - Hangfire只允许同时运行同一个任务
			
Hangfire有个机制可以确保所有任务都会被执行,如果当服务器停机了一段时间重新启动时,在此期间的周期任务会几乎同时执行.而大部分时候,我们希望同个周期任务每段时间只运行一个就行了. 或者是如果周期 ...