自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(230)
  • 资源 (3)
  • 问答 (1)
  • 收藏
  • 关注

原创 C++ bit级别的复制

好的,我可以帮你实现这个函数。这个函数的实现步骤如下:计算源字节和目标字节的起始位置,即和除以8的商。计算源字节和目标字节内的起始位的偏移量,即和除以8的余数。循环复制每一位,共复制numBits这个实现考虑了源位和目标位可能跨越字节边界的情况,通过位运算实现了位级别的复制。请注意,这个实现假设源位和目标位的范围是合法的,即不会越界访问内存。如果需要更严格的边界检查,可以在函数开头添加相应的断言或错误处理逻辑。

2024-04-19 09:52:16 165

原创 solana 入门 1

列出可用的分发版。

2024-03-11 17:07:37 1219

原创 缩放算法优化步骤详解

在最里层的循环里面,每次都要计算 row / fYZoom 和 column / fXZoom,这个实际上可以挪出for循环,计算一次存到数组里。我们知道sse128可以一次性处理4个int类型,所以我们把最后一层for循环改成,4个坐标的算法,不满4个的单独计算。这个指令是使用1个i,来设置__m128i,将__m128i看做4个32位的部分,则每个部分都被赋为i;根据比例计算原图和缩放后图坐标的对应关系:缩放后图坐标*缩放比例 = 原图坐标。上面 一次处理四个坐标的代码要改成sse的代码。

2024-03-08 17:14:59 1495

原创 206. Reverse Linked List

【代码】206. Reverse Linked List。

2024-03-06 22:04:37 470

原创 基于chatgpt的聊天机器人

以下是一个基于Python的示例代码,展示如何在本地环境中使用预训练的ChatGPT模型构建一个简单的聊天机器人应用程序。在这个示例中,我们将使用Hugging Face Transformers库加载GPT-2模型,并创建一个基于命令行的用户界面。步骤 1: 安装必要的库确保您已经安装了以下库:步骤 2: 编写代码。

2024-03-04 15:06:06 1976

原创 27. Remove Element

【代码】27. Remove Element。

2024-02-26 09:53:42 889

原创 SIMD学习笔记2:高斯卷积计算优化

【代码】SIMD学习笔记2:高斯卷积计算优化。

2024-02-06 17:12:04 707

原创 SIMD学习笔记1

参考 http://const.me/articles/simd/simd.pdf示例:对4个数字求平方使用SIMD。

2024-02-06 17:04:32 603

原创 169. Majority Element

Given an array nums of size n, return the majority element.The majority element is the element that appears more than ⌊n / 2⌋ times. You may assume that the majority element always exists in the array.Example 1:Input: nums = [3,2,3]Output: 3Example 2:Inp

2024-02-04 15:07:22 1012

原创 leetcode 2446. Determine if Two Events Have Conflict

You are given two arrays of strings that represent two inclusive events that happened on the same day, event1 and event2, where:event1 = [startTime1, endTime1] andevent2 = [startTime2, endTime2].Event times are valid 24 hours format in the form of HH:MM.

2024-01-31 14:15:38 1223

原创 将本地项目通过git上传到仓库

在命令窗口中输入:git remote add origin 你的仓库地址。在【鼠标右击】弹出的菜单中,点击【Git Bash Here】在命令窗口中输入:git pull origin master。在命令窗口中输入:git push origin master。在 Gitee 中 我们刚刚新建的仓库里,去复制仓库的地址。在命令窗口中输入:git commit -m “提交项目”打开我们的项目,此时项目中是没有 .git 文件的。在命令窗口中输入:git add .在命令窗口中输入:git init。

2024-01-25 14:55:28 792

原创 452. Minimum Number of Arrows to Burst Balloons

【代码】452. Minimum Number of Arrows to Burst Balloons。

2024-01-22 17:10:05 866

原创 leetcodev 435. Non-overlapping Intervals

【代码】leetcodev 435. Non-overlapping Intervals。

2024-01-22 16:53:15 644

原创 C++ 模板 Traits

运行结果很明显 当T为char类型是结果错误。打印累加过程看看:发现问题出在:char类型的取值范围是 -128 ~ +127,输出是: 127 -128 -127所以累加函数,当T为char类型时,T total{};代码的需要改成因为char类型的数据做累加的时候太容易超出取值范围,而产生数字溢出的错误了。

2024-01-19 15:03:47 549

原创 结构体内存泄漏,vs诊断工具

在排查问题时,你可以使用内存分析工具,例如Valgrind或Visual Studio的内存调试工具,来跟踪内存分配和释放的情况,以找出内存泄漏或异常分配的原因。在调试过程中,打开vs的诊断工具,发现大量std::_Container_proxy[] 的实例,定位到struct S代码。确保你对容器的使用是正确的,避免不必要的动态内存分配。这样的内存清零函数。相反,可以使用合适的初始化方式,或者直接调用对象的构造函数。对象是一个传入的引用参数,通常可以在调用函数时确保传入的对象是有效的,无需使用。

2024-01-17 16:52:08 1079

原创 C++写二进制文件

【代码】C++写二进制文件。

2024-01-16 16:07:16 656

原创 Algorithms practice:leetcode 33. Search in Rotated Sorted Array

【代码】Algorithms practice:leetcode 33. Search in Rotated Sorted Array。

2023-12-29 18:00:11 1360 1

原创 google test : 测试已有项目(模板类)

项目结构如下:greenNoiseMask 是原有项目在解决方案中添加google test 项目:sample-test2。

2023-12-21 15:57:53 643

原创 Heap Sort Algorithm

要从上述给定的数组元素中建立最大堆,可以清楚地看到,上述形成的完整二叉树并不遵循堆属性。因此,我们的想法是按照自上而下的方法,将数组形成的完整二叉树按相反的层级顺序进行堆化。即首先堆化树中按层级顺序遍历的最后一个节点,然后堆化倒数第二个节点,以此类推。Last non-leaf node 最后一个非叶子节点。

2023-12-14 21:10:45 1219

原创 Quick Sort Algorithm

【代码】Quick Sort Algorithm。

2023-12-11 23:12:03 363

原创 Algorithms practice:array

【代码】Algorithms practice:array。

2023-12-11 23:11:02 382

原创 随机迷宫C++

【代码】随机迷宫C++

2023-12-11 11:21:38 257

原创 柏林噪声C++

随机噪声如上图所示随机噪声没有任何规律可言,我们希望生成有一些意义的局部连续的随机图案。

2023-12-07 11:36:53 909

原创 绘制纹理C++

用数学和C++绘制一些纹理。

2023-12-05 15:34:41 547

原创 学习代码PerlinNoise

所以在这个例子中,模板参数URBG被std::random_device所赋值,std::random_device满足可调用、返回无符号整数的要求,所以可以成功实例化构造函数。这个模板的参数URBG必须是一个可调用的类型,调用后返回无符号整数,只有满足这两个条件,这个模板才能够正常实例化,否则实例化失败。这里对构造函数进行了实现,使用了模板参数声明中的条件来限制实现的条件。,它可以接受任意类型的迭代器和随机数引擎,并对指定范围内的元素进行洗牌操作。函数的作用是对指定范围内的元素进行洗牌操作。

2023-12-05 15:30:11 325

原创 埃尔米特插值(hermite 插值) C++

为了可视化效果可以把结果写到HermiteInterpolator.txt。

2023-11-22 12:03:42 1051

原创 C++: int转换成LPCSTR

在上面的代码中,sprintf函数可以将int类型转换为字符串类型,然后将字符串类型赋值给一个char类型的数组str。最后,将str指针转换为LPCSTR类型的指针lpcstr。当不想使用sprintf的方法时,可以使用C++标准库中的std::to_string函数将int类型转换为字符串类型,然后再将字符串类型转换为LPCSTR类型。在上面的代码中,std::to_string函数可以将int类型转换为字符串类型,然后使用c_str()方法将字符串类型转换为LPCSTR类型。

2023-11-21 14:08:05 798

原创 缩放图片算法优化 sse

本来提取像素和设置像素都应该用sse写的,但是折磨了chatgpt好几天 也没有写出来。所以这里仅用sse优化 源数据以及目标数据坐标的计算。这里实现了打印文件的缩放算法。即使是这样优化效果也很好。

2023-11-16 16:29:55 876

原创 基于B样条的FFD自由变换原理与C++实现

基础类BaseFFD。

2023-11-03 16:27:07 458

原创 缩放打印文件(prt,prn)

图片的宽度为nImageWidth,那么文件这一行的长度为:(nImageWidth * nImageColorDeep+7)/8。也就是说我们看见的图片的每一行对应打印文件的四行,每2位代表一个颜色。注意:读文件时,首先需要解析文件头,如上。打印机支持的文件为 prt 或者prn。这里介绍如何缩放打印文件。因为文件必须为 8位对齐。

2023-11-02 09:58:18 516

原创 OutputDebugString 输出时间

在C++ debug模式下,一些集成开发环境(IDE)也提供了自带的控制台输出窗口来显示程序的运行结果。在Visual Studio中,可以使用函数将输出信息打印到“输出”窗口。

2023-09-18 11:35:14 513

原创 有指针或者多维数组时,如何写 拷贝构造函数,移动构造函数,拷贝赋值运算符,移动赋值运算符

当成员变量里面有指针或者多维数组时,如何写 拷贝构造函数,移动构造函数,拷贝赋值运算符,移动赋值运算符头文件实现main运行结果。

2023-08-31 17:57:07 485

原创 vs MSB3073 错误 xcopy VCEnd

命令格式:XCOPY source [destination] 一堆可选的参数。但是我的source 地址里面有空格即,在命令行中使用 xcopy命令,发现。我有一个文件夹的名字是 a b。xcopy VCEnd 错误。改为a_b 不报错了。

2023-08-28 14:55:42 532

原创 move 与 析构函数

move 与 析构函数

2023-08-23 16:29:55 565

原创 使用 Visual Studio GoogleTest编写 C/C++ 单元测试——入门篇

Visual Studio 新建 GoogleTest项目,一路选默认参数。

2023-08-15 14:37:40 2314

原创 生产者消费者模型 C++ 版

生产者消费者模型 C++

2023-08-10 11:26:31 797

原创 C++ 性能优化

通过分析算法的执行次数和输入规模之间的关系,可以确定算法的大O复杂度,从而选择更高效的算法。:在进行优化后,务必进行全面的测试和验证,确保代码的正确性和性能的提升。:一些简单的代码优化可以带来明显的性能改进,如减少循环中的计算量、消除不必要的判断和条件分支、减少函数调用等。:使用适当的注释、空行和缩进,将代码划分为逻辑清晰的模块,提高代码的可读性和可维护性。:添加必要的注释来解释代码的目的和逻辑,尤其是复杂的算法或关键的代码段。:遵循统一的代码风格,如缩进、括号的使用等,使代码更易于理解和阅读。

2023-08-04 10:10:57 1253

原创 二维网格划分 LRU缓存设计

如果以后有这种情况,SrcDataCacheMap的类型要改成 std::unordered_map数据索引为网格中的位置(x,y),即:给定int xStart, int yStart, int width, int height, 计算给定数据块占整个空间哪些网格。注意: 因为本人 网格划分 与 文件划分保持一致,所以不存在一个位置有多个block的情况。双向链表LRULinkedNode。LRUCache设计。

2023-08-04 09:38:58 1247

原创 设计模式:创建型模式

考虑一个多风格的界面应用,要求可以切换不同风格类型的组件(窗口,滚动条,按钮等)WidgetFactory: 抽象工厂,用于创建滚动条和窗口。MotifWidgetFactory: 继承抽象工厂(WidgetFactory),用于给Motif类型创建滚动条和窗口。他依赖于MotifWindow和MotifScrollBarPMWidgetFactory: 继承抽象工厂(WidgetFactory),用于给PM类型创建滚动条和窗口。他依赖于PMWindow和PMScrollBar。

2023-07-20 17:19:50 550 1

原创 Shortest Cell Path

【代码】Shortest Cell Path。

2023-03-13 21:23:05 799 1

encyclopedia of distance

这本书详细讲解了各个领域的距离。一本距离的百科全书。如果需要更改loss函数或者使用距离 可以翻翻看

2019-01-02

a kernel two sample test

We address the problem of comparing samples from two probability distributions, by proposing statistical tests of the null hypothesis that these distributions are equal against the alternative hypothesis that these distributions are different (this is called the two-sample problem).

2018-07-19

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

TA关注的人

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