- 博客(161)
- 资源 (1)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 c++ python @cache 的模仿
那么c++ 可不可以相对方便的像 python那样 稍微加亿点点代码实现 从暴力搜索到 记忆化搜索的 华丽的转身了,那就有了下面这个拙劣的模仿。在B站讲题, 当时的反应就是一脸震惊, 看着我c++ dfs 没有记忆化的代码陷入了沉思。第一次看到python @cache 魔法的时候是在看。3、修改 , 我们会发现, 代码基本上一样的。1、将上面的代码拷贝到代码文件。2、写出暴力dfs的代码。
2024-04-26 13:07:13
441
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 关于double精度的问题的思考
在算法题中, 万恶的double精度经常让我们痛苦不堪, 下面对算法中double的进度问题进行一些思考。本文会围绕两个问题进行思考2、double 比较。
2024-04-22 12:49:26
464
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 c 运算符优先级顺序速记
在掌握C语言中的运算符及其优先级时,有一套简洁而高效的速记口诀可以帮助我们迅速记住它们的顺序和用法。这些口诀不仅便于记忆,而且能够在编程实践中快速定位和解决问题。下面是这套速记口诀的详细解读和一些额外的说明,旨在帮助读者更好地理解和应用。
2024-02-21 11:35:13
643
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 c++ STL less 的视角
c++ less 函数在不同的地方感觉所起的作用是不一样的, 这中间原因是 less 的视角不一样, 下面尝试给出解释下, 方便记忆。
2024-02-02 14:55:27
442
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 c++ 关于那些莫名其妙 “不 coredump” 的思考
很多人都听过, 在某个地方删除一个 printf 的时候, 代码居然 coredump 了,本文尝试对这些问题做一点思考。
2024-01-20 16:48:26
390
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 c++二叉树遍历-从递归法到迭代法的前世今生
;};};publicreturn;}//当前frame还未添加到datadata.push_back(currentFrame->val);//0//currentFrame入栈位置,这里的栈值的系统栈,我们自己用栈模拟的时候需要用栈实际操作preorderTraversal_recursion_helper(currentFrame->left,data);............
2022-08-01 17:13:16
215
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 c++-二叉树遍历for loop统一迭代法
PRE先序遍历IN中序遍历POST后序遍历。c+±二叉树遍历forloop统一迭代法。c+±二叉树遍历forloop统一迭代法。c+±二叉树遍历forloop统一迭代法。c+±二叉树遍历forloop统一迭代法。c+±二叉树遍历forloop统一迭代法。c+±二叉树遍历forloop统一迭代法。c+±二叉树遍历forloop统一迭代法。c+±二叉树遍历forloop统一迭代法。c+±二叉树遍历forloop统一迭代法。c+±二叉树遍历forloop统一迭代法。......
2022-07-25 13:10:26
603
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 leetcode-代码测试模板
代码提交前的测试模板#include <iostream>#include <utility>#include <string>#include <cstring>#include <vector>#include <map>#include <set>#include <stack>#include <queue>#include <unordered_map>#i
2021-06-23 11:43:19
846
1
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 c++从堆到哈希堆
#include <iostream>#include <utility>#include <string>#include <cstring>#include <vector>#include <map>#include <set>#include <stack>#include <queue>#include <unordered_map>#include <
2021-06-16 20:21:46
218
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 c++codeforce 代码测试模板
准备工作:创建 input.txt 放测试数据创建 expect.txt 放预期结果编译命令g++ main.cpp -std=c++17 -Wall -DTEST#include <iostream>#include <utility>#include <string>#include <cstring>#include <vector>#include <map>#include <set>
2021-06-10 11:36:06
763
1
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 c++ 函数式编程-管道流水线
#include <iostream>#include <utility>#include <vector>#include <algorithm>using namespace std;// 重载 operator// 注意operator| 重载时两个参数至少一个必须为类类型或者class枚举类型template<typename T, class F>auto operator|(T &¶m, F.
2021-05-25 19:30:59
609
1
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 c++ pipeline设计模式的实现
pipeline 设计模式的实现, 有几个小问题暂时还懒得解决getDownStream 每次都重新生成新的对象,可以优化下pipeline 模式的核心是 downstream 可以方便提供, 目前写死了。#include <string.h>#include <algorithm>#include <iostream>#include <map>#include <numeric>#include <queue>
2021-05-11 15:00:36
3634
2
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 n皇后 最快算法
1、 求 n 皇后总数class Solution {public: int upperlimit = 0; int sum = 0; /* 从第一行开始能放的位置, 并置为 1 now 记录了当前哪些列放了皇后 ld 记录了 45 度方向放皇后的列 rd 记录了 135 度方向放皇后的列 */ void test(int now, int left, int right) { if (now == upperlimit) {
2021-04-01 11:12:47
186
原创 c++ 区间相关算法合集
sparseTable树状数组zkw 线段树1、不修改, 最大 最小, 区间和线段树2、单点修改,最大、最小、区间和线段树3、区间修改, 最大、最小、区间和线段树
2024-05-29 14:18:38
101
原创 c++ 刷题代码加速
代码#define __SANITIZE_ADDRESS__ 0#pragma comment(linker, "/stack:200000000")#pragma GCC optimize("Ofast,no-stack-protector")#pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,tune=native")#pragma GCC optimize("unroll-loops")auto _ = []()
2024-05-05 14:48:27
384
原创 c++自定义数据结构适配std::sort
下面的代码看起来很复杂, 其实主要是需要适配的接口稍多,核心代码很简单。2、提供begin(), end() 函数。其实本质就是适配库函数sort。c++ 想要适配sort 需要。1、适配随机随机迭代器。
2024-04-29 13:11:38
356
3
原创 c++记录std::reduce使用上的问题-意料之外的并行计算
std::reduce的并行执行特性可能导致在不同编译器或不同的运行环境下出现不同的结果,特别是当归约操作(如乘法)不是关联的时,或者编译器对并行算法的支持和优化水平不同时。非确定性的并行执行: std::reduce允许并行执行,这意味着操作的顺序可能因执行而异,特别是在涉及有状态的lambda表达式(如在你的代码中使用&[&](int init, int value))时。std::accumulate保证了操作的顺序,虽然它可能不会像std::reduce那样利用并行执行的优势。
2024-03-04 20:32:12
888
原创 c++ 字符串切分split
c++ 字符串切分split 的举例实现一共给出了四种方式1、 strtok3、 字符串查找4、 基于封装的方式,提供了 c++11 foreach 接口。
2024-01-31 20:32:17
358
原创 在 C++ 中实现子进程执行和管道通信:一个实用指南
在这篇博客中,我们将深入探索如何在 C++ 程序中实现子进程的创建与执行,以及父子进程间的管道通信。核心代码提供了一个框架,用于接收用户命令、创建子进程并利用 execvp 系统调用执行这些命令。此外,我们通过创建管道(pipe),展示了如何在父子进程间安全地传递数据。本文重点介绍 fork, pipe, 和 execvp 的使用方法,并解释了如何将标准输出和标准错误从子进程重定向到父进程。这一过程涉及对 Unix 系统调用的深入理解,尤其是进程间通信(IPC)的概念。
2024-01-06 22:02:46
902
原创 c++ redis客户端, 带详情输入输出
redis输出: redis返回的基于 redis协议的数据。输入redis: redis收到的redis协议的数据。human输出: 稍微处理过的 redis放回的数据。human输入: 你输入的原始字符。一行内输入 redis 命令。等等 redis命令。
2023-12-08 02:51:00
117
原创 c++ compare_exchange_strong|weak使用小陷阱
1、将上面的int x 改成 long long x, 这样就不会有4字节的填充。compare_exchange_strong|weak 在比较相等时用的是。但是a1 和 x 逐位比较也应该想等才对呀,那问题出现在哪里呢。这二者有什么差异呢, 我们仅仅将 int x 注释掉了。示例一 内存不对齐的大小是 8 + 4 = 12B。答案是什么也不输出, 这个有一点出乎意料了。答案是:内存对齐导致的额外的padding。但是因为内存对齐导致其大小为 16B。memcpy 比较了16,memcpy 逐位比较。
2023-08-23 18:47:17
403
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人