[发明专利]一种任意目标值求和的拆包算法及装置在审
申请号: | 201811083061.3 | 申请日: | 2018-09-17 |
公开(公告)号: | CN109062864A | 公开(公告)日: | 2018-12-21 |
发明(设计)人: | 江振辉 | 申请(专利权)人: | 达飞云贷科技(北京)有限公司 |
主分类号: | G06F17/10 | 分类号: | G06F17/10 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 王宝筠 |
地址: | 100025 北京市朝阳*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 求和 拆包 算法 第一数据 子集 递归条件 集合元素 降序排列 循环执行 元素生成 原始数据 回溯 记录 | ||
1.一种任意目标值求和的拆包算法,其特征在于,包括:
对原始数据集合元素按照元素值进行降序排列,得到第一数据集;
根据目标值,将所述第一数据集中的元素进行求和,记录每个元素的路径;
根据所述路径对满足所述目标值的元素进行回溯,获取所述元素生成所述目标值的子集,其中,根据递归条件循环执行元素求和直至获取到满足目标值的全部子集。
2.根据权利要求1所述的方法,其特征在于,还包括:
设置所述第一数据集中的元素状态,其中,将满足所述目标值的元素状态设置为已参与运算,将不满足所述目标值的元素状态设置为未参与运算;
若所述元素不满足所述目标值,则随机选取未参与运算元素生成临时集合;
将所述临时集合添加至所述原始数据集中生成第二数据集,实现重新确定满足所述目标值的子集。
3.根据权利要求2所述的方法,其特征在于,还包括:
对所述临时子集中的元素进行求和,得到第一和值;
判断所述第一和值是否大于所述目标值,如果是,则判断所述临时集合是否为空集;
若所述临时集合不为空集,则记录所述第二数据集中元素不满足目标值的失败次数。
4.根据权利要求3所述的方法,其特征在于,还包括:
判断所述失败次数是否小于失败次数阈值;
如果是,则记录所述目标值的子集。
5.根据权利要求1所述的方法,其特征在于,还包括:
确定寻求目标值的子集的递归终止条件,其中,所述递归终止条件为所述第一数据集中元素之和小于所述目标值,且在预定次数中递归无结果返回。
6.一种任意目标值求和的拆包装置,其特征在于,包括:
排列单元,用于对原始数据集合元素按照元素值进行降序排列,得到第一数据集;
路径记录单元,用于根据目标值,将所述第一数据集中的元素进行求和,记录每个元素的路径;
回溯单元,用于根据所述路径对满足所述目标值的元素进行回溯,获取所述元素生成所述目标值的子集,其中,根据递归条件循环执行元素求和直至获取到满足目标值的全部子集。
7.根据权利要求6所述的装置,其特征在于,还包括:
设置单元,用于设置所述第一数据集中的元素状态,其中,将满足所述目标值的元素状态设置为已参与运算,将不满足所述目标值的元素状态设置为未参与运算;
选取单元,用于若所述元素不满足所述目标值,则随机选取未参与运算元素生成临时集合;
添加单元,用于将所述临时集合添加至所述原始数据集中生成第二数据集,实现重新确定满足所述目标值的子集。
8.根据权利要求7所述的装置,其特征在于,还包括:
求和单元,用于对所述临时子集中的元素进行求和,得到第一和值;
判断单元,用于判断所述第一和值是否大于所述目标值,如果是,则判断所述临时集合是否为空集;
次数记录单元,用于若所述临时集合不为空集,则记录所述第二数据集中元素不满足目标值的失败次数。
9.根据权利要求8所述的装置,其特征在于,还包括:
次数判断子单元,用于判断所述失败次数是否小于失败次数阈值;
子集记录子单元,用于如果是,则记录所述目标值的子集。
10.根据权利要求6所述的装置,其特征在于,还包括:
条件确定单元,用于确定寻求目标值的子集的递归终止条件,其中,所述递归终止条件为所述第一数据集中元素之和小于所述目标值,且在预定次数中递归无结果返回。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于达飞云贷科技(北京)有限公司,未经达飞云贷科技(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811083061.3/1.html,转载请声明来源钻瓜专利网。