自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

心动的那一刻,记忆便盛开了花

不必纠结当下,不必担忧未来。一直走,天一定会亮

  • 博客(49)
  • 收藏
  • 关注

原创 C++内存管理

对于上述操作,C语言的动态内存存储也都可以实现的,那为什么祖师爷还要创建new和delete呢?// new/delete 和 malloc/free最大区别是 new/delete对于【自定义类型】除了开空间还会调用构造函数和析构函数,有时候我们会忘记调用free函数,导致空间的浪费class sui{public::_sui(sui)~sui() {private:int _sui;delete p2;// 内置类型是几乎是一样的。

2024-09-10 08:43:34 859

原创 C++万字解析类和对象

/与结构体定义格式类似class Date//类域 Date类名//可以存放变量、函数public://公共域_day = day;private://私有域// 为了区分成员变量,⼀般习惯上成员变量// 会加⼀个特殊标识,如_ 或者 m开头int _year;int _month;int _day;//使用(.)操作符d.print();

2024-09-08 20:21:18 1356

原创 c语言项目-贪吃蛇超详细

本次实现贪吃蛇会使用到的一些Win32 API知识,接下来我们就学习一下。

2024-09-08 20:18:52 1310

原创 const、inline、nullptr的使用

inline(内敛函数)与宏函数类似。

2024-09-08 20:17:33 724

原创 C++入门基础(内容太干,噎住了)

文章目录1.缺省参数2.函数重载2.1重载条件:1.参数类型不同2.参数个数不同3.参数类型顺序不同 2.2不做重载条件情况:1.返回值相同时2.当全缺省遇见无参数3.引用3.1引用特性:3.2引用的使用C++支持在同一作用域中出现同名函数,但是要求这些同名函数的形参不同,可以是参数个数不同或者类型不同。这样C++函数调用就表现出了多态行为,使用更灵活。C语言是不支持同一作用域中出现同名函数的。 cpp会根据函数中参数类型进行函数的匹配2.参数个数不同cpp会根据函数中参数类个数进行函数的匹配

2024-09-08 20:16:43 1016

原创 C++入门基础(内容太干,噎住了)

C++语言之父”:本贾尼·斯特劳斯特卢普。

2024-09-08 20:15:27 1850

原创 Ultimate Vocal Remover(最强人声与伴奏分离)-声音训练的好搭档

最后点击start processing即可。

2024-08-13 21:08:26 544

原创 数据结构-常见的七大排序

上节中我们学习了七大排序中的五种(这节我们将要学习快速排序(

2024-08-13 20:37:21 940

原创 GPT-SoVITS-文本转语音(你的声音不再是唯一)

训练完成,获取训练文件(保存至weights文件夹),在对该位置打钩,静静等待。RVC:可利用语音转语音,对于变声器方面强于GPT-SoVITS。选择训练文件,提供参考音频与音频的文本(纯声音,最好无背景音乐)然后输入你所需要的文本,合成语音,就可以获得你想要的语音。GPT-SoVITS:可使用文本转语音(也可使用RVC)GPT-SoVITS与RVC同为花儿不哭大佬的产品。训练格式化工具:为我们训练模型的地方,与RVC类似。微调训练:则是我们训练过后的文件,进行声音的调整。推理:则是我们文本转语音的地方。

2024-08-07 21:17:01 492

原创 数据结构-常见的七大排序

1. 希尔排序是对直接插入排序的优化。2.当gap > 1时都是预排序,目的是让数组更接近于有序。当gap == 1时,数组已经接近有序的了,这样就会很快。这样整体而言,可以达到优化的效果。我们实现后可以进行性能测试的对比。3. 希尔排序的时间复杂度不好计算,因为gap的取值方法很多,导致很难去计算,因此在好些树中给出的希尔排序的时间复杂度都不固定。

2024-08-07 20:47:03 1076

原创 RVC-AI声音克隆-你的声音不再是唯一

是一个基于Hubert模型的AI语音转换工具,可以实现男女声的互换和降噪。本文将要介绍RVC的安装和使用方法。

2024-07-30 23:11:59 702

原创 【数据结构】二叉树OJ_旋转二叉树_平衡二叉树

为NULL则返回0,不为NULL,则最大的左(右)子树加1,在进行比较

2024-07-20 14:56:39 350

原创 【数据结构】二叉树OJ题_对称二叉树_另一棵的子树

给你一个二叉树的根节点root, 检查它是否轴对称。truefalset。

2024-07-20 14:19:17 490

原创 【数据结构】二叉树OJ题_单值二叉树_相同的树

如果二叉树每个节点都具有相同的值,那么该二叉树就是单值二叉树。只有给定的树是单值二叉树时,才返回true;否则返回false。truefalse。

2024-07-19 18:51:13 526

原创 【数据结构】超详解二叉树

的。

2024-07-17 21:03:50 1298

原创 【数据结构】详解堆

升序:建大堆降序:建小堆(1)升序:建大堆【思考】排升序,建小堆可以吗?-- 可以(但不推荐)。首先对 n 个数建小堆,选出最小的数,接着对剩下的 n-1 个数建小堆,选出第二小的数,不断重复上述过程。【时间复杂度】建 n 个数的堆时间复杂度是 O(N),所以上述操作时间复杂度为 O(N²),效率太低,关系变得杂乱,尤其是当数据量大的时候,效率就更低。同时堆的价值也没有被体现出来,这样不如用直接排序。排升序,因为数字依次递增,需要找到最大的数字,得建大堆。首先对 n 个数建大堆。

2024-07-16 21:28:15 1237

原创 数据结构队列(深入链表的应用)

队列:只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有先进先出FIFO(First In First Out) 入队列:进行插入操作的一端称为出队列:进行删除操作的一端称为队列就像是隧道(先进先出);队列也可以数组和链表的结构实现,使用链表的结构实现更优一些,因为如果使用数组的结构,出队列在数组头上出数据,效率会比较低。

2024-06-02 11:34:02 982

原创 每日一题——栈的OJ题(有效的括号)

当数组走完,右括号恰好能完全匹配,但是呢,栈却还存留一个。每个右括号都有一个对应的相同类型的左括号。每个右括号都有一个对应的相同类型的左括号。这里运用到栈的思想,所以这里先要实现栈。为了解决这个问题,我们需要判NULL。左括号必须用相同类型的右括号闭合。左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。左括号必须以正确的顺序闭合。为了方便分析:加大一点点剂量。对于传址问题,这是很常见的。每次取栈顶数据与之匹配。

2024-06-02 10:10:30 342

原创 深入了解栈(走进栈的世界)

欢迎来到栈的领域,想必你也看了很多的数据结构吧!希望这篇将会给你带来不一样的感想!!!

2024-06-01 14:18:34 927

原创 单链表的习题练习(温故而知新)

给定单链表的头节点head,请反转链表,并返回反转后的链表的头节点。

2024-05-16 22:38:35 640

原创 链表超详解(逐渐上瘾)

我们上节学习了顺序表的实现.

2024-05-15 10:26:40 390 1

原创 力扣 合并两个有序数列||移除元素

给你两个按排列的整数数组nums1和nums2,另有两个整数m和n,分别表示nums1和nums2中的元素数目。请你nums2到nums1中,使合并后的数组同样按排列。最终,合并后数组不应由函数返回,而是存储在数组nums1中。为了应对这种情况,nums1的初始长度为m + n,其中前m个元素表示应合并的元素,后n个元素为0,应忽略。nums2的长度为n。需要合并 [1,2,3] 和 [2,5,6]。合并结果是 [,2,,5,6] ,其中斜体加粗标注的为 nums1 中的元素。[1]

2024-05-14 14:35:26 865

原创 顺序表的实现(迈入数据结构的大门)(2)

书接上文。

2024-05-09 22:59:17 623

原创 探索数据结构(让数据结构不再成为幻想)

算法(Algorithm)就是定义良好的计算过程,他取出一个或一组数据为输入,产出一个或一组的值为输出。简单来说算法就是一系列的计算步骤,用来将输入数据转化成输出结果。排序,递归与分治,回溯,DP,贪心,搜索算法、二分查找、水桶法等等;算法往往数学密切相关,就如数学题一样,每道数学题都有不同的解法,算法也是同理。

2024-05-08 10:19:11 892

原创 顺序表的实现(迈入数据结构的大门)(1)

数据结构是由:“数据”与“结构”两部分组成。

2024-05-07 23:31:31 782

原创 什么是编译与链接呢!

int b = a;//当进行预处理时,此语句将变为 int b = 10;而将#define删除return 0;2.处理所有的条件编译指令,如: #if、#ifdef、#elif、#else、#endifint main()int a = 10;int b = 20;int c = 30;//d ==30#if 0//如果为1,则正常运行下句#endif//相当于注释掉此句return 0;3.处理#include 预编译指令,将包含的头文件的内容插入到该预编译指令的位置。

2024-04-29 21:04:33 318

原创 C语言之详细讲解文件操作(抓住文件操作的奥秘)

可以使。

2024-04-28 20:02:48 650

原创 动态内存的管理(内存储存的god)

数组在申明的时候,必须指定数组的长度,数组空间一旦确定了大小不能调整对于空间的开辟,固定的空间大小有时候不能满足我们的需求。这个时候我们就需要自己开辟一段空间。

2024-04-21 14:43:51 1002

原创 【自定义类型详解】完结篇—联合体(共用体)与枚举详解

3.枚举的应用。

2024-04-20 23:31:36 791

原创 数据在内存中的存储(探索内存的秘密)

一、整数在内存中的存储一、整数在内存中的存储整数的2进制表示方法有三种,即 原码、反码和补码三种表示方法均有和两部分,符号位都是,而,剩余的都是数值位。正整数的原、反、补码都相同。原、反、补码都相同负整数的三种表示方法各不相同。原码:直接将数值按照正负数的形式翻译成⼆进制得到的就是原码。反码:将,其他位依次按位取反就可以得到反码。补码:反码+1就得到补码。

2024-04-19 20:32:53 1027

原创 C语言结构体—自定义类型—struct

int age[4];}s1,s2;//创建两个变量s1,s2也许初期看不习惯,容易疑惑,其实这就相当于两步合并一步:先定义结构体stu,在定义结构体变量;int age[4];第三种:匿名结构体struct {int age[4];}s1,s2;在后面的学习中,我们会也利用结构体的嵌套实现链表:在这里看不懂也没有关系,up主会在后期的博文中讲解这一板块//链表的运用int data;//结构体嵌套初始化//结构体嵌套初始化结构成员访问操作符1、结构体成员的直接访问。

2024-04-15 17:22:15 390 1

原创 C语言—内存函数的实现和模拟实现(内存函数的丝绸之路)

函数memcpy从source的位置开始向后复制num个字节的数据到destination指向的内存位置。和memcpy的差别就是memmove函数处理的源内存块和目标内存块是可以重叠的。如果source和destination有任何的重叠,复制的结果都是未定义的。如果源空间和目标空间出现重叠,就得使用memmove函数处理。这个函数在遇到 '\0' 的时候并不会停下来。对于重叠的部分,可以交给memmove处理;1. memcpy 使用和模拟实现。2. memmove 使用和模拟实现。

2024-04-15 10:24:13 591 1

原创 C语言—字符函数与字符串函数(字符问题变简单的关键之技)

1.字符分类函数正文开始:在编程过程中,我们经常要处理字符和字符串,为了方便操作字符和字符串,C语⾔标准库中提供了 一系列库函数,接下来我们就学习⼀下这些函数。1.字符分类函数C语⾔中有⼀系列的函数是专门做字符分类的,也就是⼀个字符是属于什么类型的字符的。这些函数的使⽤都需要包含⼀个头⽂件是ctype.h练习:写⼀个代码,将字符串中的小写字⺟转⼤写,其他字符不变。2.字符转换函数//将参数传进去的大写字母转小写//将参数传进去的小写字母转大写。

2024-04-14 18:26:46 619 2

原创 C语言之九九乘法表||素数||最小公倍数

我们需要一个变量来代替素数,其次我们需要两个变量来判断他是否能够整除和整除的值,最后因为要判断是否只有本身和1能够整除,我们可以引用一个变量来统计它能够整除的数的个数;然后将最小的数的值赋给c,然后让a和b依次去除以c,c每次减少1,第一个能与a和b整除就为最小公倍数。以列或行观察总会有一个不变的量乘以1,2,3,4,5,6,7,8,9。由最小公倍数的意义得需要三个变量,其中两个是需要有用户特定的。以a(除数),b(被除数),c(余数),d(个数)为例。然后在+1在乘以1,2,3,4,5,6,7,8,9。

2024-04-12 22:54:02 631 1

原创 C语言详解指针(指针海洋的探索,将传值与传址刻在心里)

目录一、指针的概念1.1内存与地址 例子:二、变量的指针与指针变量2.1、指针变量的定义及使用1、指针变量的定义2、指针变量的使用2.2 指针变量的大小2.3、指针+-整数 2.4、void*指针三、指针的运算1、指针+- 整数2、指针-指针3、指针的关系运算6. 野指针6.1、野指针成因6.2、如何规避野指针6.3、注意指针不要越界6.4、当指针不再使用时,可以将其置为NULL,指针使用前,判断其有效性6.2、assert函数四、多级指针及指针数组(1)多级指针对于指针的学习还很多,今天先讲到这里了要知道

2024-04-12 22:50:07 1777

原创 C语言——函数递归

递归是学习C语⾔函数绕不开的⼀个话题,那什么是递归呢?递归其实是⼀种解决问题的⽅法,在C语⾔中,递归就是函数⾃⼰调⽤⾃⼰。写⼀个史上最简单的C语⾔递归代码:main();//在main函数调用mainreturn 0;上述就是⼀个简单的递归程序,只不过上⾯的递归只是为了演⽰递归的基本形式,不是为了解决问题,代码最终也会陷⼊死递归,导致栈溢出(Stack overflow);递归的思想:把⼀个⼤型复杂问题层层转化为⼀个与原问题相似,但规模较小的⼦问题来求解;

2024-04-05 15:20:49 900 1

原创 VS实用调试技巧(检验程序的法宝)

bug 一词的原意是“昆虫”或“虫子”;而在电脑系统或程序中隐藏着的一些未被发现的缺陷或问题,人们也叫它“bug”。“Bug”的创始人格蕾丝·赫柏(Grace Murray Hopper),是一位为美国海军工作的电脑专家,也是最早将人类语言融入到电脑程序的人之一。而代表电脑程序出错的“bug” 这名字,正是由赫柏所取的。1947年9月9日,赫柏对Harvard Mark II设置好17000个继电器进行编程后,技术人员正在进行整机运行时,它突然停止了工作。于是他们爬上去。

2024-04-05 12:19:32 769 1

原创 C语言扫雷代码(蹦蹦炸弹)(下)

综合上节我们对于扫雷代码的分析与代码的尝试我们就写出了下面的扫雷代码。

2024-02-06 13:26:15 995 1

原创 关于我在C语言中玩扫雷(上)

​​​这是一个经典扫雷游戏(),今天,我们将要用C语言去实现它;

2024-02-05 20:56:21 1744 1

原创 C语言—函数(大化小方式的心脏)

了解了库函数,我们的关注度应该聚焦在⾃定义函数上,⾃定义函数其实更加重要,也能给程序员写 代码更多的创造性。ret_typefun_name形式参数ret_type:是指函数返回类型fun_name :是函数名括号中放的是形式参数{}:括起来的是函数体为了好理解,这里我们把函数比作工厂,工厂得输入原材料(可以是多个参数),经过加工得到产品(计算结果);ret_type是⽤来表⽰函数计算结果的类型,有时候返回类型可以是void,表⽰什么都不返回fun_name。

2024-01-30 23:07:38 1012 1

空空如也

空空如也

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

TA关注的人

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