Java - 带有决策的链表

标签 java data-structures linked-list

我正在尝试找到一种数据结构来帮助我模拟这个场景......

我有一组具有两种类型的表达式: 1. 具有应执行的计算并返回 true 或 false 结果的表达式 2.打印出信息且无返回值的表达式 这些表达式的顺序取决于其计算结果。

表达式存储在数据库中,并在运行时加载到数据结构中,该数据结构需要保留表达式的顺序以及根据表达式的结果应遵循的决策。

让我用一个简单的例子来说明这一点,其中有 4 个表达式,前两个是规则,执行时有 true 或 false 返回值,但最后 2 个只是信息性的,因此执行后流程将继续到下一个表达式。

Expression 1: "5+5=10" If True then go to Expression 2 If False then go to Expression 4 
Expression 2: "6+1=7" If True then go to Expression 4 If False then go to Expression 3
Expression 3: "print hello" 
Expression 4: "print goodbye"

我的直接想法是,数据结构可能是某种链表,它不仅需要有 next() 方法来指向下一个表达式,还需要 true() 和 false() 方法来指向下一个表达式如果表达式有返回值,则使用适当的节点。

有没有既定的方法来建模这种类型的关系?

最佳答案

您可以简单地使用二叉树。

关于Java - 带有决策的链表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12635136/

相关文章:

java - 尝试解析 Excel 文件

java - 将单个表映射到 JPA 中的可嵌入集合

java - 在Spring Boot java项目中如何将不同数据类型的属性从mongo DB映射到java类?

java - 在我的 "Custom Set"实现中需要帮助

c++ - 在类中使用 tostring。 C++

c++ - 如何编写自定义词典比较器 C++

python - 使用 ctypes 在其内部包含另一个结构的结构

c - 使用循环将 Char 值添加到链接列表 [C]

c - 程序中的未知错误

java - 为什么链表的头属性设置为transient