Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我的朋友在他的采访中被问到一个问题。
如何找到给定字符串的所有可能子字符串?我知道这可以使用许多技术来解决,但后来他得到了一个提示,那就是使用集合来解决它。
我无法弄清楚如何使用集合来做到这一点。有人可以解释一下吗?
根据定义,集合仅包含一个元素的一个副本。使用集合来解决这个问题将消除在输出集中包含重复子字符串的可能性。
假设您正在迭代此字符串:
aabbaa
寻找长度为 2 的子字符串,并随时将它们添加到集合中。
你会发现:
aa ab bb ba aa
其中第一个和最后一个是重复的,因此将丢弃一个。