博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【LeetCode】187. Repeated DNA Sequences
阅读量:6906 次
发布时间:2019-06-27

本文共 985 字,大约阅读时间需要 3 分钟。

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:["AAAAACCCCC", "CCCCCAAAAA"].

 

每个长度为10的字符串,通过查找map,判断之前是否出现过。

用hash可以降低空间复杂度。

class Solution {public:    vector
findRepeatedDnaSequences(string s) { vector
ret; if(s.size() < 10) return ret; unordered_map
m; hash
strh; for(int i = 0; i <= s.size()-10; i ++) { string sub = s.substr(i, 10); m[strh(sub)] ++; if(m[strh(sub)] == 2) {
//find repeat ret.push_back(sub); } } return ret; }};

转载地址:http://fwgdl.baihongyu.com/

你可能感兴趣的文章
在Linux上的虚拟机上启动Oracle上报ORA-00845: MEMORY_TARGET not supported on this system的问题解决...
查看>>
《Cisco IOS XR技术精要》一4.3 配置管理组件
查看>>
《社会智能与综合集成系统》—第2章参考文献
查看>>
《Adobe Photoshop CS5中文版经典教程(全彩版)》—第2课2.4节在Camera Raw中调整颜色...
查看>>
《Adobe Premiere Pro视频编辑指南(第2版)》——水银回放引擎
查看>>
从零开始打造个人专属命令行工具集——yargs 完全指南
查看>>
Spark源码分析 -- SchedulableBuilder
查看>>
《HTML5+CSS3网页设计入门必读》——第1章 理解Web的工作方式1.1 HTML和WWW简史
查看>>
真的吗?算法谋取暴利,让你多花钱
查看>>
Linux 内核测试和调试(5)
查看>>
指针与数组
查看>>
Ubuntu 14.04中修复默认启用HDMI后没有声音的问题
查看>>
《C++面向对象高效编程(第2版)》——1.12 OOP 范式和语言
查看>>
《Java遗传算法编程》—— 1.4 进化计算的优势
查看>>
《R语言数据挖掘》——2.3 混合关联规则挖掘
查看>>
Commons IO 官方文档
查看>>
《精通Linux设备驱动程序开发》——第1章 引言 1.1演进
查看>>
如何使用 Kali Linux 黑掉 Windows
查看>>
《趣题学算法》—第0章0.4节算法的正确性
查看>>
《iOS 8案例开发大全》——实例008 实现断点调试
查看>>