- 博客(12)
- 收藏
- 关注
原创 C++—— static_cast<>
也可以用于指针类型之间的转换,但需要注意的是,它只能用于具有继承关系的类指针之间,或者用于 void 指针与其它类型指针之间的转换。是 C++ 中最常用的类型转换运算符,它可以用于基本数据类型、指针类型和引用类型之间的转换。是在编译时进行类型检查的,因此它无法检测运行时的类型错误。用于进行低级别的类型转换,例如将指针转换为整数,或者将整数转换为指针。用于在继承体系中进行安全的向下转型,会在运行时进行类型检查。不能用于不同类型指针之间的转换,例如,不能将。时,需要注意其局限性,避免出现类型错误。
2025-03-10 22:03:05
391
原创 模拟退火算法
退火是一种金属热处理工艺,指的是将金属缓慢加热到一定温度,保持足够时间,然后以适宜速度冷却。的过程,我们发现:对于一个当前最优解附近的非最优解,爬山算法直接舍去了这个解。:我们有时为了使得到的解更有质量,会在模拟退火结束后,以当前温度在得到的解附近多次随机状态,尝试得到更优的解(其过程与模拟退火相似)。注意为了使得解更为精确,我们通常不直接取当前解作为答案,而是在退火过程中维护遇到的所有解的最优值。的图片(随着温度的降低,跳跃越来越不随机,最优解也越来越稳定)。有时函数的峰很多,模拟退火难以跑出最优解。
2025-03-03 21:46:22
616
原创 随机化——爬山算法
爬山算法是一种局部择优的方法,采用启发式方法,是对深度优先搜索的一种改进,它利用反馈信息帮助生成解的决策。直白地讲,就是当目前无法直接到达最优解,但是可以判断两个解哪个更优的时候,根据一些反馈信息生成一个新的可能解。因此,爬山算法每次在当前找到的最优方案附近寻找一个新方案。如果这个新的解更优,那么转移到,否则不变。这种算法对于单峰函数显然可行。Q:都知道是单峰函数了为什么不三分呢?
2025-03-03 21:21:06
640
原创 随机化——随机函数
要想使用随机化技巧,前提条件是能够快速生成随机数。本文将介绍生成随机数的常见方法。定义了数个特别的流行算法。如没有特别说明,均定义于头文件<random>。
2025-03-02 15:00:16
784
原创 新 版 骗 分 导 论
在Oier中,有一句话广为流传:任何蒟蒻必须经过大量的刷题练习才能成为大牛乃至于神牛。这就是著名的lzn定理。然而,我们这些蒟蒻们,没有经过那么多历练,却要和大牛们同场竞技,我们该怎么以弱胜强呢?答案就是:骗分那么,骗分是什么呢?骗分就是用简单的程序(比标准算法简单很多,保证蒟蒻能轻松搞定的程序),尽可能多得骗取分数。让我们走进这本《新版骗分导论》,来学习骗分的技巧,来挑战神牛吧!
2025-03-02 13:46:24
685
原创 数据结构——栈
template<class T,T为 stack 中要存储的数据类型。Container为用于存储元素的底层容器类型。back()pop_back()STL 容器std::deque和std::list满足这些要求。如果不指定,则默认使用std::deque作为底层容器。
2025-03-02 13:25:13
221
原创 枚举 -- 暴力
枚举(Enumerate)是基于已有知识来猜测答案的一种问题求解策略。枚举的思想是不断地猜测,从可能的集合中一一尝试,然后再判断题目的条件是否成立。
2025-02-27 22:17:08
315
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人