gpt4 book ai didi

c# - 多次比较字符串

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

我正在生成随机脚本,但我必须保证每个新脚本都是独一无二的(之前没有重复过)。所以基本上每个已经生成的脚本都会与每个新脚本进行比较。

除了使用普通的字符串比较,我认为必须有一种方法来散列每个新脚本,以便比较更快。

关于如何散列字符串以加快多重比较的任何想法?

最佳答案

一种方法是使用 HashSet<String>

The HashSetclass provides high performance set operations. A set is a collection that contains no duplicate elements, and whose elements are in no particular order.

HashSet<string> scripts = new HashSet<string>();

string generated_script = "some_text";

if (!scripts.Contains(generated_script)) // is HashSet<String> dont contains your string already then you can add it
{
scripts.Add(generated_script);
}

此外,您可以检查 duplicate items 是否存在在数组中。但与 HashSet<String> 相比,这可能不是很有效。

string[] array = new[] {"demo", "demo", "demo"};
string compareWith = "demo";

int duplicates_count = array.GroupBy(x => x).Count(g => g.Count() > 1);

关于c# - 多次比较字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15222087/

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