Document
拖动滑块完成拼图
首页 专利交易 科技果 科技人才 科技服务 国际服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

一种递归算法实现方法、装置及电子设备 

买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!

申请/专利权人:杭州海康威视系统技术有限公司

摘要:本发明实施例提供了一种递归算法实现方法、装置及电子设备。其中,方法包括:针对当前变量,开始执行递归算法,所述当前变量的初始值为目标变量;在执行递归算法过程中,每当所执行的步骤为递归步骤时,记录本次执行递归算法的执行进度,所述递归步骤为需要调用所述递归算法的步骤;在执行递归算法过程中,每当得到针对当前变量执行所述递归算法的结果时,基于所得到的结果,从上一次执行递归算法的执行进度开始继续执行上一次执行递归算法,直至所得到的结果为针对所述目标变量执行所述递归算法的结果。可以在不使用堆栈前提下实现了递归算法,因此不会受到堆栈深度的限制,因此可以实现复杂度较高的递归算法。

主权项:1.一种递归算法实现方法,其特征在于,所述方法包括:针对当前变量,开始执行递归算法,所述当前变量的初始值为目标变量;在执行递归算法过程中,每当所执行的步骤为递归步骤时,记录本次执行递归算法的执行进度,所述递归步骤为需要调用所述递归算法的步骤;在执行递归算法过程中,每当得到针对当前变量执行所述递归算法的结果时,基于所得到的结果,从上一次执行递归算法的执行进度开始继续执行上一次执行递归算法,直至所得到的结果为针对所述目标变量执行所述递归算法的结果,所述上一次执行递归算法为针对上一个当前变量执行的递归算法;所述方法还包括:确定待执行的递归算法中调用递归算法的次数;根据递归算法,生成所述次数个递归子函数和一个非递归子函数;对第一次迭代操作的对象创建结构体,并将创建的结构体记录于预设数组的末尾;读取所述预设数组中末尾的元素;确定执行进度是否等于0,如果所述执行进度不等于0,执行进入步骤所述次数+2-所述执行进度,如果所述执行进度等于0,执行汇总之前各次执行递归算法的结果计算本次执行递归算法的结果;所述执行进度自减一;确定所进入的子函数是否为递归子函数,如果为递归子函数,执行对下一次执行递归算法所针对的变量创建结构体,并将创建的结构体记录于所述预设数组的末尾,如果不为递归子函数,返回所述读取所述预设数组中末尾的元素;对下一次执行递归算法所针对的变量创建结构体,并将创建的结构体记录于所述预设数组的末尾;执行所述汇总之前各次执行递归算法的结果计算本次执行递归算法的结果;删除所述预设数组中末尾的元素;判断所述预设数组是否为空,如果所述预设数组不为空,返回执行所述读取所述预设数组中末尾的元素,如果所述预设数组为空,执行将最后一个得到的结果作为针对目标变量执行递归算法的结果;所述每当所执行的步骤为递归步骤时,记录本次执行递归算法的执行进度,包括:每当执行一个步骤时,记录本次执行递归算法的执行进度;所述每当得到针对当前变量执行所述递归算法的结果时,基于所得到的结果,从上一次执行递归算法的执行进度开始继续执行上一次执行递归算法,直至所得到的结果为针对所述目标变量执行所述递归算法的结果,包括:每当本次执行递归算法的执行进度表示本次执行递归算法完成时,将最新执行的步骤的输出作为针对当前变量执行所述递归算法的结果;基于所得到的结果,从上一次执行递归算法的最新记录的执行进度开始继续执行上一次执行递归算法。

全文数据:

权利要求:

百度查询: 杭州海康威视系统技术有限公司 一种递归算法实现方法、装置及电子设备

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。