自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 map和set c++

关联式容器也是⽤来存储数据的,与序列式容器不同的是,关联式容器逻辑结构通常是⾮线性结构,两个位置有紧密的关联关系,交换⼀下,他的存储结构就被破坏了。顺序容器中的元素是按关键字来保存和访问的。关联式容器有map/set系列和unordered_map/unordered_set系列。map和set的底层都是红黑树只不过map存放的是键值对就像字典一样而set只存放了键。他们都不可以存放重复的数据。

2025-01-17 21:26:13 149

原创 nth_element函数

是 C++ 标准库中的一个函数,用于部分排序。它可以将序列中的第 n 小的元素移动到第 n 个位置,并确保该位置之前的所有元素都小于等于它,之后的所有元素都大于等于它。nth_element(起始地址,查找元素的下标,最后一个元素地址+1,自定义排序);也就是所他只会将一组数据进行一段划分而不会真正对一组数据进行排序。(起始地址,查找元素的下标,最后一个元素地址+1);

2025-01-17 21:02:36 216

原创 vector模拟实现

【代码】vector模拟实现。

2024-08-31 22:33:21 119

原创 c++ string类的简单模拟实现

我们简单实现一下string的逻辑所以成员变量就只实现str指针和大小length就可以了。赋值=的operator我们可以使用传统方法和拷贝构造一样也可以使用拷贝交换实现。这里的swap函数也可以改为全局函数再进行友元声明。析构函数就释放空间再改一下值就可以了。默认构造我们选择通过初始化列表实现。字符串传值构造我们要进行深拷贝。

2024-08-29 21:00:55 301

原创 c++模板

c++的模板包括函数模板和类模板。

2024-08-06 20:41:45 241 1

原创 c++内存管理

C语言在内存管理上一般使用的函数主要是malloc,realloc,calloc和free但c++又引进了new和deleat。2. 内存映射段是高效的I/O映射方式,用于装载一个共享的动态内存库。deleat和new与之前的函数最主要的区别出来写法简单了不少还有就是在申请类的空间时会自动调用析构函数和构造函数。注意在使用这些函数或操作符的时候要想对应的使用不然有时候会导致内存的泄露甚至程序的崩溃。1. 栈又叫堆栈--非静态局部变量/函数参数/返回值等等,栈是向下增长的。

2024-08-06 20:28:10 193

原创 c++友元

• 友元提供了⼀种突破类访问限定符封装的⽅式,友元分为:友元函数和友元类,在函数声明或者类声明的前⾯加friend,并且把友元声明放到⼀个类的⾥⾯。• 友元类中的成员函数都可以是另⼀个类的友元函数,都可以访问另⼀个类中的私有和保护成员。• 外部友元函数可访问类的私有和保护成员,友元函数仅仅是⼀种声明,他不是类的成员函数。• 友元类的关系是单向的,不具有交换性,⽐如A类是B类的友元,但是B类不是A类的友元。• 友元类关系不能传递,如果A是B的友元, B是C的友元,但是A不是B的友元。• 有时提供了便利。

2024-08-05 21:39:56 188

原创 c++实现日期类的运算符重载

先写一个.h文件来定义类并声明函数。再在.cpp文件内写完所有函数。

2024-07-24 21:25:37 172

原创 C++类和对象(上)

public:// 成员函数perror("malloc申请空间失败");return;top = 0;// ...扩容int Top()private:// 成员变量int* array;size_t top;// 分号不能省略int main()Stack st;st.Init();st.Push(1);st.Push(2);return 0;

2024-07-23 20:58:11 882

原创 c++引用

引⽤不是新定义⼀个变量,⽽是给已存在变量取了⼀个别名,编译器不会为引⽤变量开辟内存空间,它和它引⽤的变量共⽤同⼀块内存空间。⽐如:⽔壶传中李逵,宋江叫"铁⽜",江湖上⼈称"⿊旋⻛";C++中为了避免引⼊太多的运算符,会复⽤C语⾔的⼀些符号,⽐如前⾯的>,这⾥引⽤也和取地址使⽤了同⼀个符号&,⼤家注意使⽤⽅法⻆度区分就可以。引⽤在实践中主要是于引⽤传参和引⽤做返回值中减少拷⻉提⾼效率和改变引⽤对象时同时改变被。引⽤⼀旦引⽤⼀个实体,再不能引⽤其他实体。⼀个变量可以有多个引⽤。

2024-07-23 10:03:41 136

原创 c++ 函数重载

C++⽀持在同⼀作⽤域中出现同名函数,但是要求这些同名函数的形参不同,可以是参数个数不同或者类型不同。这样C++函数调⽤就表现出了多态⾏为,使⽤更灵活。C语⾔是不⽀持同⼀作⽤域中出现同名函数的。注意函数重载和缺省参数尽量不要一起写。

2024-07-23 09:58:34 153

原创 c++缺省参数

缺省参数是声明或定义函数时为函数的参数指定⼀个缺省值。在调⽤该函数时,如果没有指定实参则采⽤该形参的缺省值,否则使⽤指定的实参,缺省参数分为全缺省和半缺省参数。(有些地⽅把缺省参数也叫默认参数)。全缺省就是全部形参给缺省值,半缺省就是部分形参给缺省值。C++规定半缺省参数必须从右往左依次连续缺省,不能间隔跳跃给缺省值。函数声明和定义分离时,缺省参数不能在函数声明和定义中同时出现,规定必须函数声明给缺省值。带缺省参数的函数调⽤,C++规定必须从左到右依次给实参,不能跳跃给实参。

2024-07-23 09:45:14 179

原创 c++输入输出

c++的<iostream>就像c的<stdio.h>一样都是一个头文件,<iostream> 是 Input Output Stream 的缩写,是标准的输⼊、输出流库,定义了标准的输⼊、输出对象。std::cin 是 istream 类的对象,它主要⾯向窄字符(narrow characters (of type char))的标准输⼊流。std::endl 是⼀个函数,流插⼊输出时,相当于插⼊⼀个换⾏字符加刷新缓冲区。std::cout 是 ostream 类的对象,它主要⾯向窄字符的标准输出流。

2024-07-23 09:40:42 149

原创 c++命名空间

在C/C++中,变量、函数和后⾯要学到的类都是⼤量存在的,这些变量、函数和类的名称将都存在于全局作⽤域中,可能会导致很多冲突。使⽤命名空间的⽬的是对标识符的名称进⾏本地化,以避免命名冲突或名字污染,namespace关键字的出现就是针对这种问题的。定义命名空间,需要使⽤到namespace关键字,后⾯跟命名空间的名字,然后接⼀对{}即可,{}中即为命名空间的成员。命名空间中可以定义变量/函数/类型等。

2024-07-22 14:33:20 248

原创 排序c语言

冒泡排序(Bubble Sort)是最简单和最通用的排序方法,其基本思想是:在待排序的一组数中,将相邻的两个数进行比较,若前面的数比后面的数大就交换两数,否则不交换;由此可得,在排序过程中,大的数据往下沉,小的数据往上浮,就像气泡一样,于是将这种排序算法形象地称为冒泡排序。方法,它的基本思想是将一个记录插入到已经排好序的有序表中,从而一个新的、记录数增1的有序表。中选出最小(或最大)的一个元素,存放在序列的起始位置,然后再从剩余的未排序元素中寻找到最小(大)元素,然后放到已排序的序列的末尾。

2024-07-20 14:04:25 348

原创 树形结构C语言的实现

树形结构是一层次的嵌套结构。一个树形结构的外层和内层有相似的结构,所以这种结构多可以递归的表示。经典数据结构中的各种树状图是一种典型的树形结构:一棵树可以简单的表示为根,左子树,右子树。左子树和右子树又有自己的子树。

2024-07-05 18:34:12 1011

原创 栈的实现 c语言

堆栈又名栈(stack),它是一种运算受限的线性表。限定仅在表尾进行插入和删除操作的线性表。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;从一个栈删除元素又称作出栈或退栈,它是把栈顶元素删除掉,使其相邻的元素成为新的栈顶元素。

2024-05-26 14:09:16 188

原创 实时时钟 改

1.原先的程序存在时针和分针只会指向整数的问题比如3.59时针指向3而到4.00时针会直接跳到4。注意:运行这代码需要先下载easyx在vs上。如今的时针和分针的角度算法上进行了改进。2.在表盘的周围上增加了60个小点。

2024-02-06 14:39:09 229

原创 实时时钟

【代码】实时时钟。

2024-02-05 16:07:38 468

原创 easyx小球移动

int main()while(1)Sleep(1);

2024-02-05 16:06:14 294

原创 飞机打靶子小游戏

1.飞机可以通过键盘移动,发射子弹.4.打到靶子加分并换位。

2024-02-05 11:48:13 322

原创 获得月份天数

【代码】获得月份天数。

2024-02-03 14:43:18 126

原创 找单身狗2

一个数组中只有两个数字是出现一次,其他所有数字都出现了两次。有数组的元素是:1,2,3,4,5,1,2,3,4,6。编写一个函数找出这两个只出现一次的数字。只有5和6只出现1次,要找出5和6.

2024-02-03 14:25:38 141

原创 计算机(转移表)

通过p函数指针数组来实现转移表。

2024-02-03 13:53:18 109

原创 杨辉三角

在屏幕上打印杨辉三角。

2024-02-02 20:22:45 104

原创 猜凶手

member代表了没有说谎的次数,从A到D循环依次假设是凶手计算member的值如果member等于了3那就说明了当前假设的那个人就是凶手。日本某地发生了一件谋杀案,警察通过排查确定杀人凶手必为4个嫌疑犯的一个。现在请根据这些信息,写一个程序来确定到底谁是凶手。已知3个人说了真话,1个人说的是假话。

2024-02-02 20:06:31 200

原创 杨氏矩阵

有一个数字矩阵,矩阵的每行从左到右是递增的,矩阵从上到下是递增的,请编写程序在这样的矩阵中查找某个数字是否存在。要求:时间复杂度小于O(N);

2024-02-02 19:34:36 120

原创 字符串旋转结果

写一个函数,判断一个字符串是否为另外一个字符串旋转之后的字符串。

2024-02-02 17:35:40 303

原创 冒泡排序

实现一个对整形数组的冒泡排序。

2024-02-02 15:55:56 431

原创 使用指针打印数组内容

写一个函数打印arr数组的内容,不使用数组下标,使用指针。arr是一个整形一维数组。

2024-02-02 15:42:56 90

原创 strlen自实现

【代码】strlen自实现。

2024-01-30 10:29:59 114

原创 字符串左旋

实现一个函数,可以左旋字符串中的k个字符。例如:ABCD左旋一个字符得到BCDAABCD左旋两个字符得到CDAB。

2024-01-30 10:21:52 201

原创 字符串逆序

写一个函数,可以逆序一个字符串的内容。

2024-01-30 09:43:09 34

原创 求Sn=a+aa+aaa+aaaa+aaaaa的前5项之和

【代码】求Sn=a+aa+aaa+aaaa+aaaaa的前5项之和。

2024-01-26 12:51:09 111

原创 自幂数 水仙花数

水仙花数(Narcissistic number)也被称为、阿姆斯壮数或(Armstrong number),水仙花数是指一个 3 位数,它的每个数位上的数字的 3次幂之和等于它本身。例如:1^3 + 5^3+ 3^3 = 153。水仙花数只是的一种,严格来说3位数的3次才称为水仙花数。附:其他位数的自幂数名字三位自幂数:水仙花数。

2024-01-26 12:50:26 190

原创 打印菱形

int main()return 0;

2024-01-26 11:48:52 166

原创 喝汽水问题

喝汽水,1瓶汽水1元,2个空瓶可以换一瓶汽水,给n元,可以喝多少汽水。member是和到饮料的数量empty是空瓶的数量。

2024-01-26 11:42:04 205

原创 打印整数二进制的奇数位和偶数位

获取一个整数二进制序列中所有的偶数位和奇数位,分别打印出二进制序列。

2024-01-25 22:03:35 149

原创 求两个数二进制中不同位的个数

编程实现:两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同?输入例子:1999 2299输出例子:7。

2024-01-24 21:54:46 362

原创 统计二进制中1的个数

写一个函数返回参数二进制中 1 的个数。比如: 15 0000 1111 4 个 1。

2024-01-24 21:45:07 372

空空如也

空空如也

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

TA关注的人

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