码迷,mamicode.com
首页 > 其他好文 > 详细

Leetcode OJ : Repeated DNA Sequences hash

时间:2015-02-19 12:54:56      阅读:124      评论:0      收藏:0      [点我收藏+]

标签:

Total Accepted: 3790 Total Submissions: 21072

 
 

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"].

 

很水的hashtable

 1 class Solution:
 2     # @param s, a string
 3     # @return a list of strings
 4     def findRepeatedDnaSequences(self, s):
 5         hashset, addedset, retlist = set(), set(), []
 6         for x in range(len(s)):
 7             substr = s[x: x + 10]
 8             if substr in hashset:
 9                 if substr not in addedset:
10                     retlist.append(substr)
11                     addedset.add(substr)
12             else:
13                 hashset.add(substr)
14         return retlist

 

Leetcode OJ : Repeated DNA Sequences hash

标签:

原文地址:http://www.cnblogs.com/ydlme/p/4296060.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!