gpt4 book ai didi

java - 如何以优化的方式查找一个非常大的文件中是否存在某个单词?

转载 作者:行者123 更新时间:2023-12-02 11:16:41 24 4
gpt4 key购买 nike

游戏的流程是这样的:玩家在[0..10]中输入多个元音。我们生成 10 个输入(元音)辅音,最终显示 10 个无序字母。然后,玩家尝试用给定的字母组成尽可能长的单词。

问题:我们有一本重要的字典来检查这个词是否有效。

搜索的最佳方式是什么?我最好的两个想法是:

  1. 将不同文件中的单词分开,并按其中存储的单词内的元音数量进行索引。
  2. 使用Streamer()。使用返回单词中元音数量的函数的过滤方法。

就时间复杂度而言,两者似乎都非常昂贵(我不知道我是否正确使用了该术语)。

我希望我说得足够清楚。

最佳答案

我假设你正在使用java。如果这是真的,您可以将所有单词存储在 HashSet<String> 中。 。

集合将数据存储在桶中。因此,当您搜索某个单词时,jvm 会首先找到可能包含该单词的存储桶,然后查看该存储桶以确认该单词是否存在。

此方法与您提到的选项 1 类似。所有的复杂性都对您隐藏。你只需要调用 contains 方法。 jvm 在幕后为您完成这一切。

    HashSet<String> dictionary = new HashSet<String>();

//add words to dictionary
dictionary.add("apple");

//Returns true if this set contains the specified element.
dictionary.contains("apple");

关于java - 如何以优化的方式查找一个非常大的文件中是否存在某个单词?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50219667/

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