Tag: search

Java:搜索二维数组中的单词

我已经学习了大约4个月的Java,这是我学习的第一门编程语言。 对于学校,我们必须做一个项目,一个基于控制台的游戏。 我选择了Boggle。 我有一个带有骰子的ArrayList,每个都有一个随机的“向上”,然后ArrayList被洗牌,一个二维数组充满了每一面的值。 此时arrays充满了字符串,字符可能是更好的选择,但是很容易改变。 我面临的问题是我需要能够在数组中找到单词。 Boggle中的单词可以向任何方向移动,每个单独的块只能使用一次,但路径可以交叉,也可以对角搜索。 我设法找到数组中是否存在第一个字母。 如果不是,则可以中止搜索,如果存在则需要开始搜索,搜索单词的第二个字符,该字符必须在第一个字符的块周围。 我做了一些数学运算,发现它总是以“i-1和j-1”为例,作为周围区块的左上角。 我解决了这个问题,但似乎无法找到单词…而且,如果周围有2个“e”,我不知道如何搜索每个“e”的单词。 这是我到目前为止的代码: 这是我目前最重要的课程,Gameboard类 public class Gameboard { private List dices = new ArrayList(); private final int boardSize; private String[][] board; private boolean [][] blocksAvailable; private Random random = new Random(); public GameBoard() { // Making the board with a given size (will be changeable later […]

实现搜索文档(PDF,XML,HTML,MS Word)的最佳方法是什么?

编写搜索function以在java Web应用程序中搜索文档的好方法是什么? “标记搜索”是否适合此类搜索function?

使用Apache Tika在solr中的PDF文件的ContentExtraction

我试图使用以下教程http://wiki.apache.org/solr/ExtractingRequestHandler索引solr中的PDF文件但是每次我发出命令 java -jar post.jar *.pdf 它说一些org.apache.solr.common.SolrException:无效的UTF-8中间字节0xe3错误请帮我将PDF索引到solr server.Is还有其他整合然后tika可以帮助我。

用启发式实现回溯搜索?

我对搜索算法和回溯编程非常感兴趣。 现在,我已经实现了算法X(请参阅我的其他post: 确定无冲突集? )来解决确切的覆盖问题。 这非常有效,但我现在有兴趣用更基本的回溯变体来解决这个问题。 我无法弄清楚如何做到这一点。 问题描述与以前相同: 假设你有一堆集合,而每个集合都有几个子集。 Set1 = {(香蕉,菠萝,橙子),(苹果,羽衣甘蓝,黄瓜),(洋葱,大蒜)} Set2 = {(香蕉,黄瓜,大蒜),(鳄梨,番茄)} … SetN = {…} 现在的目标是从每个集合中选择一个子集,而每个子集必须与任何其他所选子集无冲突(一个元素不包含在任何其他所选子集中)。 作为一个例子,我写了两个Java类。 集合由单个字符标识,元素是普通数字。 我特别有两个问题: 如何迭代所有集合/子集,以便可以使用启发式(选择具有最小元素,最低成本的子集……) 如何维护选定的集+子集及其包含的元素。 我能找到的所有其他例子都是Sudoku或n-Queens,并且都使用固定的for循环。 除此之外,我正在考虑一种相当普遍的方法,其中如果所选择的路径/集合可能与先前选择的子集/元素冲突,则可以使用函数“isPossiblePartialSolution”来检查。 以下是两个Java类: import java.util.ArrayList; public class Main { public static void main(String[] args) { ArrayList allSets = buildRandomTest(); for(Set r : allSets) { System.out.print(“Set with id: ” + r.id + […]

搜索排序列表最近和小于

考虑一些long叫做X和一个有序的List 。 在List中找到索引或值的最有效算法是什么(i)小于X ,以及(ii)在数字行上最接近X (假设条件(i)已被饱和)? 例如,这可能是一个问题设置: long X = 500; List foo = new Arraylist(); foo.add(450L); foo.add(451L); foo.add(499L); foo.add(501L); foo.add(550L); Collections.sort(foo); // It’s always sorted. 我希望算法返回499或返回与499相关的索引(在这种情况下i=2 )。

我可以在Java中对邮件服务器执行搜索吗?

我正在尝试使用Java搜索我的Gmail。 使用JavaMail,我可以通过消息搜索来执行消息,如下所示: Properties props = System.getProperties(); props.setProperty(“mail.store.protocol”, “imaps”); Session session = Session.getDefaultInstance(props, null); Store store = session.getStore(“imaps”); store.connect(“imap.gmail.com”, “myUsername”, “myPassword”); Folder inbox = store.getFolder(“Inbox”); inbox.open(Folder.READ_ONLY); SearchTerm term = new SearchTerm() { @Override public boolean match(Message mess) { try { return mess.getContent().toString().toLowerCase().indexOf(“boston”) != -1; } catch (IOException ex) { Logger.getLogger(JavaMailTest.class.getName()).log(Level.SEVERE, null, ex); } catch (MessagingException ex) […]

创建搜索TextField字段以在javafx tableview中搜索

假设我有一个包含许多列的TableView ,我想添加一个搜索字段来过滤符合特定条件的行,按名称搜索作为示例。 谢谢

更喜欢Apache Lucene而不是Solr的情况?

使用Solr 1.4(开箱即用的分面搜索,分组,复制,http管理与luke,……)有几个优点。 即使我在我的Java应用程序中嵌入了搜索function,我也可以使用SolrJ来避免在使用Solr时进行HTTP权衡。 是否推荐SolrJ? 那么,你什么时候推荐使用“纯Lucene”? 它有更好的性能还是需要更少的RAM? 它是否可以更好地进行unit testing? PS:我知道这个问题 。

在文本正文中找到一个ASCII艺术图像,并具有一定的容错性

是否有任何算法可以找到以下ASCII艺术图像? + + +++ +++++++ ++ ++ ++ + ++ ++ +++ ++ ++ + ++ ++ ++ +++++++ +++ 在下面的文本体内? complete_file_here + + + ++ + +++ + + + ++ + + ++++ + + + + + + +++ +++ + + + + ++ ++ ++ + ++ + + + […]

java:根据目录和子目录中的名称搜索文件

我需要根据目录树中的名称查找文件。 然后显示此文件的路径。 我找到了这样的东西,但它根据扩展搜索。 任何人都可以帮助我如何根据我的需要重新编写代码…谢谢 public class filesFinder { public static void main(String[] args) { File root = new File(“c:\\test”); try { String[] extensions = {“txt”}; boolean recursive = true; Collection files = FileUtils.listFiles(root, extensions, recursive); for (Iterator iterator = files.iterator(); iterator.hasNext();) { File file = (File) iterator.next(); System.out.println(file.getAbsolutePath()); } } catch (Exception e) { e.printStackTrace(); […]