自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 时间复杂度技巧

O(n*sqrt(n) )的算法数据范围n < 1e5。O(n *logn)的算法数据范围n <= 1e6。O(n^2)的算法数据范围n<5000。O(n^3)的算法数据范围n <300。O(2^n)的算法数据范围n < 25。O(n)的算法数据范围n < 1e8。)的算法数据范围n < 11。根据数据范围推测时间复杂度。不同时间复杂度的数据范围。

2023-08-08 19:32:22 72

原创 c++stl简介

unordered_set, unordered_map, unordered_multiset, unordered_multimap, 哈希表。不支持 lower_bound()/upper_bound(), 迭代器的++,--lower_bound(x) 返回大于等于x的最小的数的迭代器。时间复杂度是 O(logn)(1) 输入是一个数x,删除所有x O(k + logn)upper_bound(x) 返回大于x的最小的数的迭代器。substr(起始下标,(子串长度)) 返回子串。

2023-08-08 09:42:00 80

原创 c++中bool类型数组和int型数组的区别

在选择使用 `bool` 类型数组还是 `int` 类型数组时,要根据具体的需求来决定。因为 `bool` 类型数组使用的是 1 bit 存储每个元素,而 `int` 类型数组占用的是 4 或 8 bytes。需要注意的是,在大多数情况下,`bool` 类型数组的长度是有限制的(通常是 8 bits),而 `int` 类型数组的长度可以是任意的。3. 取值范围:`bool` 类型的取值只能是 true 或 false,而 `int` 类型可以表示更大范围的整数,取决于该平台上 `int` 类型的字节大小。

2023-07-31 10:03:39 1609 1

原创 离散化算法

在这个例子中,我们将原始数组 `{10, 5, 3, 7, 10, 7}` 进行离散化,最终得到的映射数组为 `{1, 0, 4, 2, 1, 2}`。离散化后,原始数组中的 10 映射为 1,5 映射为 0,3 映射为 4,7 映射为 2。在离散化算法的实现中,我们首先复制并排序原始数组,然后去除排序后数组中的重复元素。然后,我们遍历原始数组,利用 `lower_bound()` 函数查找每个元素在排序后数组中的位置,并将找到的位置作为映射数组中的元素。AcWing练习-区间和。

2023-07-22 19:12:07 110 1

原创 c++中string的substr函数

需要注意的是,C++ 中的 `substr` 函数返回的是一个新的 `std::string` 对象,而不是原始字符串的引用或指针。如果不指定 `len`,则默认提取从 `pos` 到字符串末尾的所有字符。1. `substr(pos, len)`: 提取从位置 `pos` 开始的长度为 `len` 的子串。在上面的示例中,我们使用了字符串的 `substr` 函数来提取指定位置的子串,并将结果打印输出。2. `substr(pos)`: 提取从位置 `pos` 开始到末尾的子串。

2023-07-21 10:50:10 8311 1

原创 c++stl中的map

C++编程中,map是一个容器类模板,用于存储键值对(key-value)形式的数据。其本质是一种关联式容器(associative container),通过键(key)来进行查找和访问值(value)。map中的键值对是按照键进行自动排序的,可以根据键名查找值,并且支持遍历所有的键值对。在C++中使用map时,需要引入头文件,其中键和值的类型可以任意指定。这段程序中,我们定义了一个map类型的对象m,并将三个键值对分别插入到这个map中。然后我们遍历这个map,并输出其中的键值对。

2023-07-20 19:10:02 51

原创 单调队列 滑动窗口

【代码】单调队列 滑动窗口。

2023-07-19 10:04:42 76

原创 哈希表两种方法(开放寻址、拉链)

【代码】哈希表两种方法(开放寻址、拉链)

2023-07-18 16:25:42 47 1

原创 快速排序模板

【代码】快速排序模板。

2023-07-18 16:23:27 27 1

原创 任意进制转换

【代码】任意进制转换。

2023-07-18 16:22:07 34 1

原创 二分法(两个模板)

【代码】二分法(两个模板)

2023-07-18 16:21:15 48 1

原创 二维前缀和模板

【代码】二维前缀和模板。

2023-07-18 16:20:39 30 1

原创 二维差分模板

【代码】二维差分模板。

2023-07-18 16:20:07 59 1

原创 差分模板。

【代码】差分模板。

2023-07-18 16:19:28 62 1

原创 快速幂取模模板

【代码】快速幂取模模板。

2023-07-18 16:15:58 48

原创 求天数类题很好用的一个公式

接着考虑闰年对年份的影响:每四年一个闰年,每一百年少一个闰年,每四百年多扣除了一天,于是修正的天数为 y÷4−y÷100+y÷400。利用上面的公式,我们就可以计算出某一个日期距离公元第一天的天数之差,如果要计算两个日期之差分别计算相减即可。式子求的是y年m月d日距离公元第一天(即1年1月1日)的天数。首先,每一年的“基础天数”为 y∗365 天。

2023-07-18 16:12:18 195 1

原创 c++栈经典题目-【表达式求值】

Python中的整除//默认向下取整,因此Python的eval()函数中的整除也是向下取整,在本题中不能直接使用。题目中的整除是指向 0 取整,也就是说对于大于 0 的结果向下取整,例如 5/3=15/3=1,对于小于 0 的结果向上取整,例如 5/(1−4)=−1。题目保证符号 - 只作为减号出现,不会作为负号出现,例如,-1+2,(2+2)*(-(1+1)+2) 之类表达式均不会出现。给定一个表达式,其中运算符仅包含 +,-,*,/(加 减 乘 整除),可能包含括号,请你求出表达式的最终值。

2023-07-18 15:57:57 101

原创 洛谷p3382三分法(模板)

转载大佬

2023-05-23 20:41:18 112 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除