- 博客(6)
- 收藏
- 关注
原创 树形结构:二叉堆
把一种运算符变成另一种运算符(都必须是原有的运算符)2.在优先队列如何实现重载假设你有一个数列,每个数都有一个优先级和权值,现在我们要按照优先级从小到大的输出这个数列(treap和sort不是更好吗),treap和sort都可以实现,但我们要介绍的是堆排序的方式解决这题首先我们定义一个结构体,其中进行重载运算}a[100];为什么是这样的格式?这里重载了小于运算符 <。在C++中,你可以重载大多数运算符以改变它们对特定类型的操作行为。这个特别的重载允许我们比较两个 node 类型的对象。
2025-01-06 23:11:41
994
原创 01背包的一些理解(从递归到动规的思路)
有 N 件物品和一个容量是 V 的背包。每件物品只能使用一次。第 i 件物品的体积是 vi,价值是 wi。求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。输出最大价值。
2024-12-20 13:42:49
331
原创 manacher’s algorithm(马拉车模板题)求最大回文子串
给出一个只由小写英文字符 a,b,c,…y,z 组成的字符串 S ,求 S 中最长回文串的长度。针对这第一点考虑增加原字符串不存在字符(如"#"),使其保留原串性质并成为奇数长度。一行小写英文字符 a,b,c,⋯,y,z 组成的字符串 S。1.奇偶需要分类 2.回文串对称性没有充分利用,时间效率低。针对第二点考虑利用对称性进行尝试线性遍历优化。
2024-12-16 22:59:20
410
原创 洛谷1638逛画展(双指针&单调队列思路)
游客在购买门票时必须说明两个数字,aa 和 bb,代表他要看展览中的第 aa 幅至第 bb 幅画(包含 a,ba,b)之间的所有图画,而门票的价钱就是一张图画一元。第一行两个整数 n,mn,m,分别表示博览馆内的图画总数及这些图画是由多少位名师的画所绘画的。#注意STL里queue不支持队首的删除,deque双端队列才可以删除队首元素。当然,他想最小化购买门票的价格。第二行包含 nn 个整数 aiai,代表画第 ii 幅画的名师的编号。请求出他购买门票时应选择的 a,ba,b,数据保证一定有解。
2024-12-10 22:59:01
487
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人