1、编写一个工具函数,获取一个由 0 和 1 组成的串中数字 0 和 1 的个数。
2、基于动态规划的思想,实现算法:1. 定义一个动态规划数组 dp, 这是一个二维数组,dp[i][j柯计瓤绘] 表示 i 个 0 和 j 个 1 能拼接的最大字符串的个数;2. 对于第 k 个字符串,假设其包含 a 个 0 以及 b 个 1, 则可以有如下公式:dp[i][j] = max( 1+dp[i-a][j-b] , dp[i][j] ),其中 i>=a, j>=b;3. 遍历所有字符串,最后 dp[m][n] 即最后的解。
3、编写本地测试主方法。
4、运行本地测试主方法,观察控制台输出,符合预期,本地测试通过。
5、平台提交算法,测试通过。