sách gpt4 ai đã đi

java - 字符串数组(树)

In lại 作者:行者123 更新时间:2023-11-29 04:24:16 30 4
mua khóa gpt4 Nike

假设我们有 5 个字符串数组:

String[] array1 = {"hello", "i", "cat"};
String[] array2 = {"hello", "i", "am"};
String[] array3 = {"hello", "James"};'
String[] array4 = {"hello", "i", "bob"};
String[] array5 = {"hello", "mike", "wasup"};

我如何创建一棵树,其中“hello”始终是根,第二个元素是根的子元素,其他元素成为子根的子元素。 (每个节点可以有 0-n 个子节点)

一个例子:

           Xin chào
/ \ \
i james mike
/ \ \ /
cat am bob wasup

上图是我想要的一种树。请不要编写任何代码。我想了解这个概念。解释您作为程序员的方法。

1 Câu trả lời

它是一棵树,其中单词可能紧跟在给定单词之后。

因此,应该有一个人工词根,因为可能会有句子使用除“你好”之外的其他词。

将所有这些句子 (array1, ...) 本身放入一个数组(或集合或数据库)中。这样一个人就可以从他们身上走过;可以认为它们是可迭代的。

有一个部分树,最初是空的,只包含 ROOT。

然后循环直到所有单词都在树中,寻找新单词添加到所有现有单词中。对于每个句子,将第一个词放在词根下(ROOT 已经存在)。对于每隔一个单词,如果前一个单词在树中,则将该单词放在前一个树下。


如您所见,在稳定的固定数据上采用天真的方法(遵循上述方法)需要跳过很多。人们当然可以将单词映射到包含其所有后继者的树节点,这样算法就变得非常简单。

关于java - 字符串数组(树),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47212969/

30 4 0
Bài viết được đề xuất: JavaMail API - 读取大型 outlook 邮箱 (>3000) 的邮件内容
Bài viết được đề xuất: php - SPHINX 搜索引擎上的 enable_star 不工作
Bài viết được đề xuất: php - 从不同的列中选择多个值
Bài viết được đề xuất: java - 谁处理由 java 中的组件创建的事件
行者123
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com