- 博客(50)
- 收藏
- 关注
原创 我的创作纪念日
成为创作者的初衷是从学习C/C++语法与数据结构过程中获得的灵感。在日常学习和项目实践中,我发现这些知识既丰富又复杂,对初学者而言尤为困难。因此,我决定通过博客记录自己的学习过程、解决思路以及代码实现,帮助更多人在C/C++的学习中少走弯路。通过不断努力,希望能够把技术与分享结合得更紧密,让创作成为推动技术进步的一部分。
2024-11-29 22:55:36
513
2
原创 【C++11】尽显锋芒
本篇内容到这里就结束啦,希望对大家有帮助,C++11还有一个重要的东西,那就是智能指针,关于智能指针,我会专门写一篇文章讲述它,这里就不多说了🙊,最后祝各位生活愉快🙌!
2024-11-25 17:00:43
1096
47
原创 【C++11】初入江湖
在C++11出来前,编译器试图做了一定程度的优化,优化的程度是随着编译器不同而有差异的,但是如果优化不彻底,那么临时对象/匿名对象在拷贝时会调用拷贝构造、赋值重载,结果是效率肯定不高。但在C++11问世后,随着移动构造和移动赋值的出现,就能保证右值不会调用左值引用了(拷贝构造、复制重载),右值会选择调右值引用(移动构造、移动赋值),所以即使编译器没有做任何优化,我们的效率也是很高的!这就是移动构造和移动赋值出现的意义,这两个东西可是非常有用的。
2024-11-23 11:41:10
963
51
原创 【C++】哈希表封装unordered_set和unordered_map
本篇到这里就结束了,主要讲了用哈希表封装unordered_set和unordered_map的详细过程,希望对大家有帮助,祝生活愉快!
2024-11-19 16:59:13
1728
42
原创 【C++】unordered_set和unordered_map
本文主要讲了unordered_set和unordered_map的基本用法,以及它们与set和map的差异点,希望对大家有帮助,祝生活愉快!
2024-11-18 09:46:34
1124
14
原创 【C++】用红黑树封装set和map
本篇内容到这里就结束啦,主要讲了如何用红黑树来封装set和map容器,希望对大家有帮助,祝生活愉快!
2024-11-13 14:26:34
1040
21
原创 【Linux】基本指令
在一个村子中,有一个人名叫小王。他的家里非常有钱,他是单身,他非常害羞,和女孩说话时就会脸红。现在,他想找一个女朋友...
2024-11-09 00:18:00
1023
24
原创 【算法与数据结构】二分查找思想
二分查找(binary search)是一种基于分治策略的高效搜索算法。它利用数据的有序性,每轮缩小一半搜索范围,直至找到目标元素或搜索区间为空为止,其实有时候数据没有序也能用二分查找思想解题,遇到具体的题我们具体分析。
2024-10-24 23:10:35
1310
25
原创 【算法】滑动窗口
滑动窗口是基于双"指针"的一种思想,两个指针指向的元素之间形成一个窗口,窗口有两类,一种是固定大小类的窗口,一类是大小动态变化的窗口。
2024-10-09 21:21:11
929
5
原创 【C++】set容器和map容器的基本使用
本篇内容到这里就结束了,主要讲了set和multiset容器以及map和multimap容器的基本使用,希望对大家有帮助,祝生活愉快,我们下一篇再见!
2024-10-02 21:52:22
892
15
原创 【C++】多态
本篇内容到这里就结束了,主要讲了多态这一面向对象特性的基本使用和相关问题,希望对大家有所帮助,祝生活愉快,我们下一篇再见!
2024-09-30 16:40:50
1418
16
原创 【C++】stack和queue的使用及模拟实现
本篇内容到这里就结束了,主要讲了stack和queue的使用和模拟实现以及deque容器和优先级队列,希望对大家有所帮助,祝大家天天开心!
2024-09-25 07:29:40
721
14
原创 【C++】STL简介
STL(standard template libaray-标准模板库):是C++标准库的重要组成部分,不仅是一个可复用的组件库,而且是一个包罗数据结构与算法的软件框架。STL只是C++标准库的一部分,不能代表整个C++标准库。
2024-09-10 12:17:11
679
1
原创 【C++】内存管理
到这里就结束了,本篇主要讲解了C/C++内存分布以及可能出现的问题,希望对大家有所帮助,有不足的地方多多指正,祝大家天天开心!
2024-09-06 08:31:47
1338
3
原创 【C++】类和对象(上)
class为定义类的关键字,后紧跟类的名字,{}中为类的主体,注意类定义结束时后面分号不能省略。类体中内容称为类的成员:类中的变量称为类的属性或成员变量;类中的函数称为类的方法或者成员函数。为了区分成员变量,⼀般习惯上成员变量会加⼀个特殊标识,如成员变量前面或者后面加_或者m开头或者以m_开头,注意C++中这个并不是强制的,只是⼀些惯例,具体看要求。
2024-08-31 19:18:15
933
1
原创 【C++】初识
定义命名空间,需要使用到namespace关键字,后面跟命名空间的名字,然后接⼀对{}即可,{}中即为命名空间的成员。命名空间中可以定义变量/函数/类型等。namespace本质是定义出⼀个域,这个域跟全局域各自独立,不同的域可以定义同名变量。C++中域有函数局部域,全局域,命名空间域,类域;域影响的是编译时语法查找⼀个变量/函数/类型出处(声明或定义)的逻辑,所有有了域隔离,名字冲突就解决了。局部域和全局域除了会影响编译查找逻辑,还会影响变量的⽣命周期,命名空间域和类域不影响变量⽣命周期。
2024-08-15 17:13:02
1098
1
原创 十大经典排序算法
我们按时间复杂度、空间复杂度、稳定性依次对每个常见的排序分析一下:1、冒泡排序,它的整个过程显然是一个等差数列,所以它的时间复杂度是O(N^2),排序过程中没有开额外的空间,所以它的空间复杂度为O(1),在排序过程中,可以控制相同元素的相对位置保持不变,所以稳定。2、选择排序,它的整个过程显然也是一个等差数列,所以它的时间复杂度是O(N^2),排序过程中没有开额外的空间,所以它的空间复杂度为O(1),在排序过程中,不可以控制相同元素的相对位置保持不变,所以不稳定。
2024-07-26 22:16:33
1166
4
原创 数据结构---二叉树
如果一个节点的度为2,那么它一定是由度为1的节点变化而来的度为1的节点必有度为0的节点,要想生成度为2的节点,度为1的节点必减少1个,生成度为2的节点时,必新生成1个度为0的节点,这时度为0的总数比度为2的多一个,接下来如果再生成一个度为2的节点,对于深度为K的,有n个结点的二叉树,当且仅当其每一个结点都与深度为K的满二叉树中编号从1至n的结点一一对应时称之为完全二叉树。,否则就需要先生成一个度为1的节点,这需要减少一个度为0的,同时又加上一个度为0的,再执行画横线的。总之,度为0的始终比度为2的多一个。
2024-07-22 18:37:15
798
5
原创 数据结构---堆
(1)堆是一棵完全二叉树(2)任何父亲节点必须大于(小于)孩子节点(3)任何孩子节点无任何联系以上就是本篇的全部内容了,有不足的地方大家多多纠正,希望大家会有些许收获!最后祝大家天天开心!
2024-07-17 22:34:48
955
5
原创 C语言实现贪吃蛇小游戏(控制台)
本篇主要内容是使用C语言在Windows环境的控制台中模拟实现经典小游戏贪吃蛇。我们要实现的基本功能有:我们需要知道的知识点有:C语言函数、枚举、结构体、动态内存管理、预处理指令、链表、Win32 API等。在写游戏之前,首先我们要对一些知识了解一些。Windows这个多作业系统除了协调应用程序的执行、分配内存、管理资源之外,它同时也是⼀个很大的服务中心,调用这个服务中心的各种服务(每一种服务就是一个函数),可以帮应用程序达到开启视窗、描绘图形、使用周边设备等目的,由于这些函数服务的对象是应用程序(Appl
2024-06-01 14:40:10
878
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人