- 博客(4)
- 收藏
- 关注
原创 排序算法(cpp)
三向切分: 这段代码使用了三向切分(Three-way partitioning)的策略,即把数组分为三部分:小于基准值的、等于基准值的和大于基准值的,分别取名为左基准区间:[l , lt-1] 、基准区间:[lt , rt] 、右基准区间:[rt+1 , r]。可用于处理大量相同元素的情况。使用三个指针:l(从左向右移动)、lt(基准区间左边界)、rt(基准区间右边界)和r(从左向右移动)。如果e - b == 1,即子数组只有两个元素,则比较这两个元素并交换(如果需要),然后返回。
2024-08-11 22:54:46
653
原创 哈希表(cpp)
通过一个哈希函数来组织数据,使得插入、删除和查找操作在平均情况下具有常数时间复杂度,即 O(1)。不过,在最坏情况下(比如所有键的哈希值都相同),这些操作的时间复杂度会退化到 O(n)。头文件中定义,并且它为多种基本数据类型和某些标准库类型(如。是一个模板类,用于生成对象的哈希值。
2024-08-09 22:42:55
1137
原创 2166.设计位集
int* set;int size;int zeros;int ones;public:ones = 0;if(!reverse) {ones++;zeros--;} else {= 0) {ones++;zeros--;if(!reverse) {= 0) {ones--;zeros++;} else {ones--;zeros++;reverse =!reverse;i < size;k++) {
2024-08-04 22:17:49
854
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人