基于数组算法的决策树乳胶代码生成程序

Decision-Tree-Generator的Python项目详细描述


基于数组的决策树乳胶代码生成程序 算法

Insertion Sort Decision Tree

插入排序决策树

概述

这个项目是从能够产生一个修剪过的, 对执行操作的任何简单算法的有效决策树 一小串数据。上面是这样一棵树的例子 带元素列表的插入排序算法 ['x', 'y', 'z', 'a']

用法

当在特定算法上运行时,程序生成完整的乳胶 为该算法生成修剪后的有效决策树的代码。

主包提供一个类TreeGenerator,它应该是 继承时重写了algorithm()方法。在这种方法中, 应输入对 self.data列表。每次比较记录时 你的算法,用下面的方法代替比较 呼叫:

self.comp(<firstrecord(self.data[x])>,<comparisonoperator('<')>,<secondrecord(self.data[y])>)

此方法将返回布尔值以控制算法 操作。

要生成决策树,请执行以下步骤:*创建实例 你的算法类。*对此运行execute()方法 反对。*运行render()方法并保存/打印输出 乳胶代码。

从那里,乳胶代码可以被放入一个.tex文件中,并且 使用乳胶处理器编译。

示例

示例算法和用法可以在src/example.py中找到。

工作原理

mainexecute()方法首先调用算法 实施。无论何时进行比较,程序都会保存 程序执行的“状态”,并将节点添加到 打印乳胶代码。然后返回True以使程序 做一个左分支。每次进行比较时,它都会检查以验证 最后一个比较是有效的,如果不是,则修剪节点。如果 比较无效,它将算法置于“跛脚鸭”模式, 它指示比较方法始终返回False, 让算法完成它的过程。它继续这个过程 直到算法退出。

一旦算法退出,程序计算出布尔值。 必须返回comp()函数才能恢复执行 状态为算法中最新的左(True)分支。那么 做一个正确的分支,并继续整个过程。

通过这种方式,它探索了算法可以使用的所有可能的有效路径 在给定输入数据的情况下,生成一个树结构来表示 它。在那里,render()方法执行预排序遍历 生成乳胶代码。

贡献

如果您想添加或发现问题,请 打开一个问题或提交一个拉取请求,我将尝试处理它 尽快。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java JavaBridge errno=10054被Remotehost关闭   javafx如何在每次调用方法中的变量时更新它?(爪哇)   java mod_群集在发现后未平衡负载   Java软件编辑器/语法高亮   java为什么不能强制转换数组的结果。asList()到ArrayList?   java HIBERNATE:无法使用HIBERNATE从MySQL中提取数据   java在Google地图片段上添加布局   java在AbstractTableModel中执行setValueAt之前,我如何做一些事情?   java在整个Tomcat运行时保存变量   java如何在Thymeleaf模板中获取环境变量的值?   java Selenium Chrome驱动程序针对属性的标签   java正则表达式捕获未知数量的重复组