随笔分类 -  经典算法问题

动态规划——正则表达式匹配与通配符匹配
摘要:一、LeetCode 10.正则表达式匹配 dp[i][j]表示字符串s[0...i]与字符串p[0...j]是否匹配。空字符串与空字符串是匹配的,dp[0][0] = true。 s[i]与p[j]相等或通过'.'匹配, 那么s[0...i]和p[0...j] 是否匹配取决于s[0...i-1]与 阅读全文

posted @ 2022-01-22 17:42 七昂的技术之旅 阅读(155) 评论(0) 推荐(0)

用等概率产生0或1的生成器,以不同概率得到1、2、3
摘要:一、问题描述: 已知rand1()等概率返回0或1,写一个函数以1/5概率输出1、2/5概率输出2、 2/5概率输出3。 二、代码实现与验证 #include <bits/stdc++.h> using namespace std; const int N = 100000; int rand1() 阅读全文

posted @ 2022-01-20 00:11 七昂的技术之旅 阅读(176) 评论(0) 推荐(0)

【递归与动态规划】正则表达式匹配
摘要:https://leetcode-cn.com/problems/regular-expression-matching/ 1. 递归思想 如果*p 为空,*s为也为空。则匹配成功。 *s、p为当前字符。如果s == *p或者 *p == '.',则当前字符是匹配的。 如果p的下一个字符串为'', 阅读全文

posted @ 2022-01-06 17:14 七昂的技术之旅 阅读(81) 评论(0) 推荐(0)

动态规划——详解leetcode518 零钱兑换 II
摘要:动态规划 零钱兑换 II 参考书目:《程序员代码面试指南:IT名企算法与数据结构题目最优解》 给定不同面额的硬币和一个总金额。写出函数来计算可以凑成总金额的硬币组合数。假设每一种面额的硬币有无限个。 示例 1: 输入: amount = 5, coins = [1, 2, 5] 输出: 4 解释: 阅读全文

posted @ 2020-07-20 18:33 七昂的技术之旅 阅读(508) 评论(0) 推荐(0)

导航