我在哪里可以找到处理"权重(参数)"的算法?用于实施奖励制度的树木?

时间:2017-07-21 16:40:12

标签: algorithm data-structures graph-algorithm

有必要建立一个吸引客户到网站的动力系统,以增加资金周转。

所以,决定使用推荐链接,来自某个人(K人)有链接,他把它交给朋友/熟人(N人),他们也在注册时输入这个推荐链接(K人)一个订单,并收到他们自己的推荐链接,这已经可以给其他人..

当某人(N人)支付并收到使用推荐链接发出的订单时,(K人)从该订单中获得一定比例......

依旧在树上:如果(男子K)带领他的人(男子X)并且当他们下订单时,奖金将所有东西都带到树上(K - > X)......

我需要找到一个允许它完成的算法(描述或名称),我将在PHP中实现它。

但是因为有必要计算一般的奖金的权宜之计和百分比...... 例如:我已经准备好在奖金上花费10,000个奖金(这样X人就可以获得10,000个),所以我想知道每个被吸引的等级的百分比是多少以及可以有多少个等级和多少个节点,以便树的根将获得10,000奖金,好吧,N,我想玩和奖金,级别,节点的总数...来估计真实情况,也许有一些在线服务,允许你这样做?

提前感谢任何帮助![enter image description here] 1

1 个答案:

答案 0 :(得分:0)

每个节点/对象/人都可以有一个父字段,您可以在其中指定引荐来自谁。

你可以创建一个递归函数来增加每个父母的奖金,直到没有更多的父母。当5进行购买时,您可以检查5是否被引用,即5是否有父母。如果是,请向父母(2)申请奖金,然后检查父母(2)是否被某人推荐。重复此步骤,直到检查父级返回false。

function bonus($N) {
  if ($N->parent === 0) { //The base case is: no parent.
     return 1;
  }
  else {
     //I didn't understand how you plan to apply bonuses, so
     //you can input here as you see fit.
     //apply bonus to $N->parent

     //This is the recursive step.
     return bonus($N->parent); // Check if the parent has a parent.
  }
}