以字母顺序生成给定字符串的所有子字符串(按字典顺序)

苏拉杰

我最近看到了这个问题,并且确实坚持执行它。

问题是要根据给定的字符串生成所有可能的按字母顺序排序的子字符串。

较小的示例:对于字符串xcv

我需要生成输出:

c cv cvx v vx x

更大的示例:对于字符串hgrte

我需要生成以下子字符串:

e
eg
egh
eghr
eghrt
eght
egr
egrt
egt
eh
ehr
ehrt
eht
er
ert
et
g
gh
ghr
ghrt
ght
gr
grt
gt
h
hr
hrt
ht
r
rt
t

这是我的实现,没有产生期望的输出。

s = sorted(list(input()))
s = ''.join(s)
for i in range(len(s)):
    for j in range(i+1, len(s)+1):
        temp = s[i:j]
        print(''.join(temp))

这是我的代码的输出:

e
eg
egh
eghr
eghrt
g
gh
ghr
ghrt
h
hr
hrt
r
rt
t
[]

我知道我在打印后必须使用回溯和递归eghrt,但是我真的坚持执行它。提前致谢 :)

吹牛

您可以遍历不同的长度并用于itertools.combinations生成字母的组合:

from itertools import combinations
s = sorted(input())
print(*sorted(''.join(c) for i in range(len(s)) for c in combinations(s, i + 1)), sep='\n')

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何按字母顺序对字符串进行排序

来自分类Dev

按字母顺序查找最长的子字符串

来自分类Dev

按字母顺序查找最长的子字符串

来自分类Dev

当键是字符串(名称)时,按字母顺序对字典排序

来自分类Dev

将字符串按字母顺序排序

来自分类Dev

如何按字母顺序对字符串进行排序

来自分类Dev

如何按字母顺序对字符串进行排序

来自分类Dev

按字母顺序插入数组中的排序字符串

来自分类Dev

Python按字母顺序对字符串排序,小写优先

来自分类Dev

按字典顺序打印给定字符串的所有字母组合的算法

来自分类Dev

在字符串中按字母顺序对字符进行排序

来自分类Dev

从字符串仅按ABC顺序打印字母

来自分类Dev

Quicksort字符串向量按字母顺序

来自分类Dev

如何按字母顺序对字符串的ArrayList进行排序?

来自分类Dev

查找字符串中所有缺少的字母(字符串按字母顺序排列)

来自分类Dev

基数按长度和字母顺序对字符串排序

来自分类Dev

如何按字母顺序对字符串排序?

来自分类Dev

按字母顺序查找最长的子字符串

来自分类Dev

Visual Basic字符串数组按字母顺序排序

来自分类Dev

在ruby中按字母顺序比较字符串是错误的

来自分类Dev

按字母顺序对C字符串数组进行排序

来自分类Dev

合并多个输入字符串以按字母顺序排序

来自分类Dev

字符串中最低字母(按字母顺序)的方法

来自分类Dev

在给定字符串之前按字母顺序查找文件

来自分类Dev

按字典顺序打印给定字符串的所有字母组合的算法

来自分类Dev

计算按字母顺序排序的子字符串

来自分类Dev

PHP:按字母顺序放置字符串

来自分类Dev

按字母顺序比较AWK字符串

来自分类Dev

按字母顺序排列字符串

Related 相关文章

热门标签

归档