gpt4 book ai didi

algorithm - 查找字典序最大的唯一字符串

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:35:32 25 4
gpt4 key购买 nike

我需要一种算法来通过删除字符(不重新排列)从字符串中找到最大的唯一(无重复字符)子串。

如果满足这两个条件,则字符串 A 大于字符串 B。

1. Has more characters than String B
Or
2. Is lexicographically greater than String B if equal length

例如,如果输入字符串是dedede,那么可能的唯一组合是deedde
因此,在这些组合中,最大的一个是 ed,因为它比 de 具有更多的字符,并且在字典序上大于 de.

该算法必须比生成所有可能的唯一字符串并对其进行排序以找到最大的字符串更有效。

注意:这不是家庭作业。

最佳答案

这个怎么样

string getLargest(string s) 
{
int largerest_char_pos=0;
string result="";
if(s.length() == 1) return s;
for(int i=0;i<s.length();)
{
p=i;
for(int j=i+1;j<s.length();j++)
{
if(s[largerest_char_pos]< s[j]) largerest_char_pos =j;
}
res+=s[largerest_char_pos];
i=largerest_char_pos+1;
}
return result;
}

这是代码片段,只是为您提供了字典序较大的字符串。如果您不想重复,您可以只跟踪已添加的字符。

关于algorithm - 查找字典序最大的唯一字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10066258/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com