小编Jur*_*aan的帖子

检测冗余规则的算法

我正在寻找一种检测冗余规则的算法.

规则具有固定数量的输入参数,并且每个参数具有不同的域.

考虑三个规则参数颜色,材质和尺寸:

  • 颜色:红色,绿色,蓝色
  • 材质:木材,玻璃,铝
  • 尺寸:小,中,大

每个规则可以匹配参数的多个值或匹配任何值.选择匹配所有参数值的第一个规则.没有否定规则,但域是固定的,因此可以通过添加所有其他域来实现否定.

       +--------------------------------------------------++-----------------
       |                   Rule Parameters                || Rule Action
       +----------------+------------------+--------------++-----------------
       | Color          | Material         | Size         || ==> Price
       +----------------+------------------+--------------++-----------------
Rule 1 | Red            | Wood, Glass      | Large        || $100
Rule 2 | Red            | Aluminium        | Large        || $200
Rule 3 | Blue or Green  | Wood             | Medium       || $300
Rule 4 | Red            | ** Any **        | Large        || $400  <== …
Run Code Online (Sandbox Code Playgroud)

java algorithm math pattern-matching discrete-mathematics

8
推荐指数
1
解决办法
756
查看次数