本文主要是介绍【实战总结】决策结果快速匹配,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
目录
1、决策树二叉寻果策略匹配
1.1策略匹配示意图
1.2方案总结
2、决策表映射寻果策略匹配
1.1策略匹配示意图
1.2方案总结
1.3实战
1、决策树二叉寻果策略匹配
1.1策略匹配示意图
1.2方案总结
※ 时间复杂度分析
平均时间复杂度O(log2N),根据实际业务场景判断配置,极大可能是不平衡树,规则越多则判定路径越长,寻果越慢,反之越快,极端情况退化成单向链表O(N)
※ 适用场景
适合多级条件判断,前后有顺序依赖判定场景
2、决策表映射寻果策略匹配
1.1策略匹配示意图
1.2方案总结
※ 时间复杂度分析
时间复杂度为O(1)。计算方式剖析:由于决策因子无依赖关系均为独立因子,可以并行查询寻果,一次进行全部因子的结果获取,然后根据每个决策因子对应的决策结果形成有序决策集合;
策略集合可以预先整合所有有序决策集合,进行一次策略匹配,匹配速度非常快
※ 适用场景
适合无依赖关系的多个条件判断场景,多线程获取全部判断结果,控制判断条件与对应的判断结果,策略集合匹配可以利用空间换时间,预加载与判断结果的Map<结果集,策略集>映射,直接匹配到策略
1.3实战
#TODO 有时间补充下这部分代码到GitHub
线上接口响应平均15ms~20ms
这篇关于【实战总结】决策结果快速匹配的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!