gpt4 book ai didi

c++ - 如何查找并返回 vector 中的重复序列

转载 作者:太空宇宙 更新时间:2023-11-04 13:27:16 25 4
gpt4 key购买 nike

我有一个动态填充的 vector ,它总是包含一个重复序列,其中包含我不确定的字符和长度。例如, vector 可以包含这些元素:

0 1 1 2 3 1 0 1 1 2 3 1 0 1 1 2 

并且该 vector 中的重复序列是:

0 1 1 2 3 1

我如何搜索 vector 并找到那些元素。我想把找到的序列放在一个新的 vector 中。一开始我假设它只需要一个简单的 for 循环并检查数组中第一个和第二个元素的重复,所以在上面的例子中,当我到达 0 1 时我会退出循环时间,但问题是不能假定前 2 个元素将处于重复模式中,所以

0 1 2 3 2 3 2 3 2 3

可以是 vector 中的有效元素。有什么想法吗?

最佳答案

一般(无限结果)不可能知道序列,因为这样的事情可能发生 100 万个 0 然后 1,在 1000 个零之后你会认为序列仅是零,但是如果 vector 是有限的你可以这样写一些东西

for(I..VECTORSIZE / 2)
if(VECTORSIZE % I == 0)
CHECK IF SUBVECTOR(0,I) == SUBVECTOR(I,I*2) == SUBVECTOR(I*2,I*3)....
return I
else continute;

关于c++ - 如何查找并返回 vector 中的重复序列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32928668/

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