数据结构
文章平均质量分 86
算法题刷刷
原创文章公众号:算法提刷刷、潮汐朝夕
我是潮汐,北京人,上海交大电子信息专业本硕。2018年硕士毕业后一直做风控AI算法工程师,深耕AI技术,金融科技和风控服务。在大型社交平台做过内容合规和反作弊,目前主要做大风控业务下的系统研发和建模。爱好骑行,围棋,钢笔,算法竞赛。对计算机、人工智能、数学、算法感兴趣的同学,欢迎关注我,阅读更多原创文章。
展开
-
二叉树的计数:直接方法与间接方法
本文我们讨论了有N1N+1N1个虚拟节点的二叉树的个数,类似的树上的计数是分析树上算法的基础问题。基于生成函数的解决过程可以分为三步,第一步是找到生成函数满足的方程,第二步是求解方程得到生成函数,第三步是将生成函数展开取zNz^{N}zN项的系数。其中最关键的是第一步,只要得到了生成函数满足的方程,不管是微分方程还是函数方程,后续的过程就比较好解决了。原创 2024-02-10 13:49:27 · 1067 阅读 · 0 评论 -
随机队列的原理与实现
摘要: 本文介绍随机队列的原理和代码模板,以及 2 道 leetcode 相关题目。【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings随机队列增加删 key 的支持380. 常数时间插入、删除和获取随机元素381. O(1) 时间插入、删除和获取随机元素 - 允许重复$1 随机队列.原创 2022-05-24 15:38:49 · 290 阅读 · 0 评论 -
leetcode第242场周赛
总览A题: 单串单向双指针参考: 尺取法B题: 值域二分参考: 二分C题: 前缀和优化 DP; 队列参考: 前缀和优化DPD题: 前缀和+博弈DP参考: 博弈DPA 题1869. 哪种连续子字符串更长给你一个二进制字符串 s 。如果字符串中由 1 组成的 最长 连续子字符串 严格长于 由 0 组成的 最长 连续子字符串,返回 true ;否则,返回 false 。例如,s = “110100010” 中,由 1 组成的最长连续子字符串的长度是 2 ,原创 2021-05-25 11:43:21 · 234 阅读 · 2 评论 -
力扣1707-与数组中元素的最大异或值
算法要点:01Trie参考: 01Trie离线查询与在线查询01Trie节点中可以额外维护子树的某些统计信息$1 题目题目链接1707. 与数组中元素的最大异或值题目描述给你一个由非负整数组成的数组 nums 。另有一个查询数组 queries ,其中 queries[i] = [xi, mi] 。第 i 个查询的答案是 xi 和任何 nums 数组中不超过 mi 的元素按位异或(XOR)得到的最大值。换句话说,答案是 max(nums[j] XOR xi) ,其中所有原创 2021-05-24 12:53:48 · 140 阅读 · 0 评论 -
稀疏相似度-倒排索引
double 转 string 时如何控制位数并正确地四舍五入,以下代码注意 1e-9,这是 C++ 的精度误差问题。stringstream ss;ss << std::fixed << std::setprecision(4);ss << double_val + 1e-9;倒排索引$1 题目题目链接面试题 17.26. 稀疏相似度题目描述两个(具有不同单词的)文档的交集(intersection)中元素的个数除以并集(union)中元素的.原创 2020-11-09 13:56:56 · 543 阅读 · 0 评论 -
随机队列
随机队列增加删 key 的支持380. 常数时间插入、删除和获取随机元素381. O(1) 时间插入、删除和获取随机元素 - 允许重复$1 随机队列与普通队列相比,除了pop随机元素而非队头元素之外,没有其它变化。push 的实现直接插到 vector 的尾部。pop 的实现选出随机下标后,将对应元素与 vector 的尾部元素交换,然后将将尾部弹出随机队列的实现#include <random>#include <vector>#include.原创 2020-10-28 20:00:40 · 441 阅读 · 0 评论