帮忙想一个树形结构的算法

问题描述

帮忙想一个树形结构的算法

这是一个树形
每个节点都是一个人
每个人都有销售业绩 (业绩=自己下面所有子节点业绩之和)
当每个人业绩达到一定数量时给一定提成
但是 自己下面的人把提成拿了 自己就拿不到那么多了

画了个简单的描述图
每个人的业绩都来自他下面的节点
假如说 业绩达到100 就给10%提成
那么这个图中 d 和 f 节点能拿到提成
对应实际金额为 d= 110x10% = 11元 f=170x10%-11(d拿走的提成)=6元

abc的总和是d的业绩 已经被 d 分了
相当于f只拿到了e的提成

注:
所有产生业绩的人员 都是节点中的一员
所有业绩都是自己子节点业绩的总和

这个算法该怎么写呢!数据库已经有了,能算出所有节点关系和业绩

解决方案

不对,做的不对,还是不对不对

时间: 2025-01-31 01:50:31

帮忙想一个树形结构的算法的相关文章

php:树形结构的算法1

       从喜悦村上转载,以前也读过此文,讲述得还是比较清楚的.   产品分类,多级的树状结构的论坛,邮件列表等许多地方我们都会遇到这样的问题:如何存储多级结构的数据?      在PHP的应用中,提供后台数据存储的通常是关系型数据库,它能够保存大量的数据,提供高效的数据检索和更新服务.然而关系型数据的基本形式是纵横交错的表,是一个平面的结构,如果要将多级树状结构存储在关系型数据库里就需要进行合理的翻译工作.接下来我会将自己的所见所闻和一些实用的经验和大家探讨一下.      层级结构的数据

PHP技巧实例:树形结构的算法

从喜悦村上转载,以前也读过此文,讲述得还是比较清楚的.产品分类,多级的树状结构的论坛,邮件列表等许多地方我们都会遇到这样的问题:如何存储多级结构的数据? 在PHP的应用中,提供后台数据存储的通常是关系型数据库,它能够保存大量的数据,提供高效的数据检索和更新服务.然而关系型数据的基本形式是纵横交错的表,是一个平面的结构,如果要将多级树状结构存储在关系型数据库里就需要进行合理的翻译工作.接下来我会将自己的所见所闻和一些实用的经验和大家探讨一下. 层级结构的数据保存在平面的数据库中基本上有两种常用设计

php:树形结构的算法 2

  1 Food 18   |   +---------------------------------------+   | |   2 Fruit 11 12 Meat 17   | |   +------------------------+ +---------------------+   | | | |   3 Red 6 7 Yellow 10 13 Beef 14 15 Pork 16   | |   4 Cherry 5 8 Banana 9      这样整个树状结构可以通过

php:树形结构的算法 3

    那么对于这样的结构我们该如何增加,更新和删除一个节点呢? 增加一个节点一般有两种方法:      保留原有的name 和parent结构,用老方法向数据中添加数据,每增加一条数据以后使用rebuild_tree函数对整个结构重新进行一次编号.   效率更高的办法是改变所有位于新节点右侧的数值.举例来说:我们想增加一种新的水果"Strawberry"(草莓)它将成为"Red"节点的最后一个子节点.首先我们需要为它腾出一些空间."Red"的右

php:树形结构的算法

产品分类,多级的树状结构的论坛,邮件列表等许多地方我们都会遇到这样的问题:如何存储多级结构的数据? 在PHP的应用中,提供后台数据存储的通常是关系型数据库,它能够保存大量的数据,提供高效的数据检索和更新服务.然而关系型数据的基本形式是纵横交错的表,是一个平面的结构,如果要将多级树状结构存储在关系型数据库里就需要进行合理的翻译工作.接下来我会将自己的所见所闻和一些实用的经验和大家探讨一下. 层级结构的数据保存在平面的数据库中基本上有两种常用设计方法: 毗邻目录模式(adjacency list m

请帮忙写一个JAVA结构体进行参数传递

问题描述 C++H文件结体如下structSDK_COMMATTRI{intiDataBits;//数据位取值为5,6,7,8intiStopBits;//停止位intiParity;//校验位intiBaudRate;//实际波特率};//串口配置structSDK_CONFIG_COMM_X{chariProtocolName[32];//串口协议:"Console"intiPortNo;//端口号SDK_COMMATTRIaCommAttri;//串口属性};structSDK_

php:树形结构的算法 4

  <?php   /**   * 显示列表   * @access public   */   function DispList()   {   //不缩进的显示方式   // $this->mIsDispListIndex = true;   // echo('<p align="right"><a href="?action=new∂=role">增加新角色</a> </p>'); _fcksave

大家过来看看,一个树形结构

问题描述 先贴出代码来,主要是一断JS代码,<htmlxmlns="http://www.w3.org/1999/xhtml"><head><metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/><title>ĵ</title><scriptlanguage="javascript"typ

[算法]将字符串转换为树形结构,标题要长

问题描述 一个LIST里包含字符串如下:1,3,5,7,92,4,62,4,10,11,18解释,例如1,3,5,7,9,代表9的父节点是7,7的父节点是5,以此类推.问题:如何重建这棵树?结果大致如下:List<TestVo>result;result.get(0).id=1;result.get(1).id=2;result.get(0).children.get(0).id=3;......TestVo:{intid;Listchildren;} 解决方案 解决方案二:list是无序的,