当前位置: 首页 > 知识库问答 >
问题:

字符串中的子字符串数:n平方或指数

漆雕奇逸
2023-03-14

一个字符串一般有几个子串?

Why does string x [1:n] have O(n^2) subtrings according to the lecture 21 Dynamic Programming III of        
6.006 from MIT? 
Why it is not O(2^n)?

这里有一个链接[http://ocw.mit.edu/courses/electrice-engineering-and-computer-science/6-006-Introduction-to-algorithms-Fall-2011/lecture-videos/mit6_006F11_lec21.pdf]

共有1个答案

董良策
2023-03-14

简单地说,子字符串是由两个参数[i,j]定义的,这两个参数是原始字符串中子字符串的起始索引和结束索引。现在0<=i,j<=n因为索引应该在字符串中,所以i&j每个都可以具有的总值是n,所以[i,j]的所有组合都是n*(n+1)/2,这就是O(n^2)

 类似资料:
  • 问题内容: 我想替换字符串中第n个出现的子字符串。 一定有什么我想做的事情是 最简单,最Python化的方法是什么? 为什么不重复: 我不想在这种方法中使用正则表达式,而我发现的类似问题的大多数答案只是正则表达式剥离或真正复杂的功能。我真的想要尽可能简单而不是正则表达式的解决方案。 问题答案: 我使用简单的函数,该函数列出所有出现的事件,选择第n个位置,并使用它将原始字符串分成两个子字符串。然后,

  • 问题内容: 有没有一种简单的方法来测试Python字符串“ xxxxABCDyyyy”,以查看其中是否包含“ ABCD”? 问题答案: if “ABCD” in “xxxxABCDyyyy”: # whatever

  • 问题内容: 我的主字符串是“ hello Swift Swift和Swift”,子字符串是Swift。我需要获取子字符串“ Swift”在提到的字符串中出现的次数。 此代码可以确定模式是否存在。 现在我需要知道发生的次数。 问题答案: 一种简单的方法是分割,然后从零件数中减去1: 此代码打印3。 编辑: 在Swift 3语法之前,代码如下所示:

  • 本文向大家介绍Java字符串中删除指定子字符串的方法简介,包括了Java字符串中删除指定子字符串的方法简介的使用技巧和注意事项,需要的朋友参考一下 有些字符串是我们存储某种类型名称的,往往有逗号‘,'或者其他符号来分隔。如果我们删除某一个参数时,往往没有数组或者列表那么方便。但是,如果有了下面这个方法,我们同样可以做好。 打印结果: 下面回顾一下JDK1.6中的replaceAll方法说明: re

  • 主要内容:到底使用字符数组还是字符串常量C语言中没有特定的字符串类型,我们通常是将字符串放在一个字符数组中,这在《 C语言字符数组和字符串》中已经进行了详细讲解,这里不妨再来演示一下: 运行结果: https://www.xnip.cn https://www.xnip.cn 字符数组归根结底还是一个数组,上节讲到的关于 指针和数组的规则同样也适用于字符数组。更改上面的代码,使用指针的方式来输出字符串: 运行结果: https://ww

  • 我试图让一个语句起作用,但由于某些原因,它不起作用。应该很简单。 假设字符串 我的代码是: 两种规格的结果都是1。