首页 > 其他分享 >重复的DNA序列

重复的DNA序列

时间:2023-11-07 20:00:46浏览次数:26  
标签:子串 set DNA 重复 字符串 给定 序列 new

题目概述:给定一字符串,返回该字符串中出现次数大于等于2且长度为10的子串
解题思路:由于其给定了子串的长度,所以我们利用substring函数直接枚举即可
时间复杂度:\(O(n)\)
代码

class Solution {
    public List<String> findRepeatedDnaSequences(String s) {
        Set<String>set = new HashSet<>();
        Map<String,Integer>map = new HashMap<>();
        if(s.length() <= 10)return new ArrayList<String>(set);
        for(int i = 0; i <= s.length() - 10; i ++){
            String sub = s.substring(i,i + 10);
            int t = map.getOrDefault(sub,0);
            t++;
            map.put(sub,t);
            if(t >= 2)set.add(sub);
        }
       return new ArrayList<String>(set);
    }
}

标签:子串,set,DNA,重复,字符串,给定,序列,new
From: https://www.cnblogs.com/dengch/p/17815815.html

相关文章

  • 时间序列分析
        在生产和科学研究中,对某一个或一组变量x(t)进行观察测量,将在一系列时刻t1,t2,…,tn(t为自变量且t1<t2<…<tn)所得到的离散数字组成序列集合x(t1),x(t2),…,x(tn),我们称之为时间序列,这种有时间意义的序列也称为动态数据。这样的动态数据在自然、经济及社会等领域......
  • 使用 JSON JavaScriptSerializer 进行序列化或反序列化时出错。字符串的长度超过了为
    一个报表的查询,用ajax调用的Service,查询条件没有问题,后台也能返回数据,就一直返回Error提示,F12看到是因为返回json时出错了 在web.config的configuration加以下代码即可解决<system.web.extensions><scripting><webServices><jsonSerializationmaxJs......
  • 19.7 Boost Asio 传输序列化数据
    序列化和反序列化是指将数据结构或对象转换为一组字节,以便在需要时可以将其存储在磁盘上或通过网络传输,并且可以在需要时重新创建原始对象或数据结构。序列化是将内存中的对象转换为字节的过程。在序列化期间,对象的状态被编码为一组字节,并可以保存或传输到另一个位置。序列化后的......
  • 你真的知道TCP协议中的序列号确认、上层协议及记录标识问题吗?
    引言在前面的内容中,我们已经详细讲解了一系列与TCP相关的面试问题。然而,这些问题都是基于个别知识点进行扩展的。今天,我们将重点讨论一些场景问题,并探讨如何解决这些问题。序列号确认问题当A主机与B主机建立了TCP连接后,A主机发送了两个TCP报文,分别大小为500和300字节。第一个报......
  • Jackson反序列化漏洞研究
    一、Jackson序列化库使用简介0x1:Jackson背景Jackson是一个强大而高效的Java库,处理Java对象及其JSON表示的序列化和反序列化。它是这项任务中使用最广泛的库之一,并在许多其他框架中作为默认的Json引擎使用。例如,虽然Spring框架支持各种序列化/反序列化库,但Jackson是默认引擎。Ja......
  • MySQL 删除重复记录
    ==========AreallyeasywaytodothisistoaddaUNIQUEindexonthe3columns.WhenyouwritetheALTERstatement,includetheIGNOREkeyword.Likeso:   ALTERIGNORETABLEjobsADDUNIQUEINDEXidx_name(site_id,title,company);Thiswilldropallt......
  • Notepad++去除重复行
    问题:需要去除重复数据,例如:  解决方案:1.打开notepad++v5.8;2.如果没有找到"TextFx"选项,需要先安装该插件。依次打开"插件"-"PluginManager"-"ShowPluginManager"-"Available"tab,找到"TextFxCharacter"选项并安装。3.选上"TextFx"-"......
  • 平衡子序列的最大和
    给你一个下标从0开始的整数数组nums。nums一个长度为k的子序列指的是选出k个下标i0<i1<...<ik-1,如果这个子序列满足以下条件,我们说它是平衡的:对于范围[1,k-1]内的所有j,nums[i]-nums[j]>=i-j都成立。nums长度为1的子序列是平衡的。请......
  • 重复提交数据造成脏数据解决方案
    1、 前端请求限制重复,vue代码如下importaxiosfrom"~../../axios"import{Loading,Message,MessageBox,Notification}from"~../../element-ui"importstorefrom"~../../../src/store"import{getToken}from"./auth"importerrorC......
  • Prüfer 序列随便学习
    引入首先这是个啥玩意呢?Prüfer序列可以将带标号的\(n\)个节点的树用一个序列表示。可以理解为完全图生成树与Prüfer序列构建了双射。建立每次选择一个编号最小的叶结点并删掉它,然后在序列中记录下它连接到的那个结点。重复\(n-2\)次后就只剩下两个结点,算法结束。......