我在尝试编写这个程序时遇到了困难。我在网上找到了许多类似的问题和解决方案,但它们并不是我想要的。
我的程序读取了一个文本文件并将其转换为 char 2D 数组。
示例文本文件:
HFELOJF
ESFOIGD
LSDIOGS
LTDMGER
OEROFFT
SFDLKEG
然后我给它一个诸如“hello”之类的词,程序会打印出天气或该词是否存在于数组中。有点像单词搜索。
我需要能够水平、垂直和对角搜索。但是在所有 3 种情况下,这个词也可以是倒退的。
我从 2 个 for 循环开始,从左上角开始,一直到最后。
在第二个 for 循环中,我有 3 个 while 循环要处理:水平、垂直和对角文本。但我刚刚意识到,如果这个词是相反的,它就行不通了。现在为了让我解决这个问题,我必须构造另外 3 个 while 循环来处理我的代码。
我只是觉得这非常重复,并认为必须有一种更简单的方法。但是我已经盯着这个问题看了好几个小时,还没有想出一个更好的主意。
如果我继续我所拥有的,我将在第二个 for 循环内有 2 个 for 循环和 6 个 while 循环,我发现它们非常混乱、重复和额外的代码。有没有更好、更快、更有效的方法来解决这样的问题?
感谢我能得到的所有帮助和信息!