记忆化搜索

记忆化搜索

在递归过程中,有许多分支被反复计算,会大大降低算法的执行效率。用记忆搜索,讲已经计算出来的结果保存起来,以后需要用到直接去除结果,避免重复运算。

题目链接 数不清的数

原本的代码

外面一层t的while循环,里面再计算1-x的的二进制中1的和,时间复杂度是on的三次方,时间复杂度太大了。

看题目的数据范围,只有31个数字,可以讲1-31的全部计算出来保存到数组中去,下面while直接从数组中取数字即可,减少了一层的时间复杂度。

dpi就是以i结尾的二进制数字个数,题目需要求的是0-2的n次方

相关推荐
じ☆冷颜〃几秒前
Picard–Lindelöf定理在CS中的应用:理论框架与算法基础
人工智能·经验分享·笔记·算法·机器学习
不知名的老吴5 分钟前
机器学习评价之基础指标
人工智能·算法·机器学习
Felven5 分钟前
D. Divisible Pairs
算法
源代码杀手6 分钟前
基于ROS2+Gazebo+RIVE的40项计算机视觉前沿机器人项目(含视觉算法原理与源码获取方式)
算法·计算机视觉·机器人
MrZhao4007 分钟前
大模型量化到底在做什么:从浮点数表示到 Qwen FP8 实践
算法
JieE2128 分钟前
LeetCode35. 搜索插入位置:二分查找的基础与细节
javascript·算法
8Qi814 分钟前
LeetCode 188 & 123:股票买卖问题(限制交易次数)—— 联合题解
算法·leetcode·职场和发展·动态规划
KaMeidebaby17 分钟前
卡梅德生物技术快报|细胞周期检测抗原流式分析:参数调试、软件拟合与问题排查
网络·人工智能·python·网络协议·tcp/ip·算法·机器学习
一只齐刘海的猫22 分钟前
【Leetcode】三数之和
数据结构·算法·leetcode
lightqjx22 分钟前
【算法】数据结构_扩展域并查集
数据结构·算法·并查集·扩展域并查集