自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 超详解C++类与对象(中)

构造函数是一个特殊的成员函数,名字与类名相同创建类类型对象时由编译器自动调用,以保证每个数据成员都有 一个合适的初始值,并且在对象整个生命周期内只调用一次。函数名与类名相同。无返回值。对象实例化时编译器自动调用对应的构造函数。构造函数可以重载。下面是一个日期类的构造函数class Datepublic:_day = day;int _month;int _day;int main()//自动调用d1.Print();return 0;

2024-10-09 18:55:00 720

原创 【探索数据结构与算法】树与二叉树上篇(图文详解)

树是一种非线性的数据结构,它是由n(n >= 0)个有限结点组成一个具有层次关系的集合。把它叫做树是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。在树中有一个特殊的结点,称为根结点,根节点没有前驱结点除根节点外,其余结点被分成M(M > 0)个互不相交的集合T1、T2、……、Tm,其中每一个集合Ti(1 <= i<= m)又是一棵结构与树类似的子树。每棵子树的根结点有且只有一个前驱,可以有0个或多个后继因此,树是递归定义的。注意:树形结构中,子树之间不能有交集,否则就不是树形结构。

2024-09-18 16:19:03 1023

原创 【探索数据结构与算法】快速排序超详解:hoare版本、挖坑法、前后指针法、优化版、非递归实现

快速排序超详解:hoare版本、挖坑法、前后指针法、优化版、非递归实现

2024-09-17 20:44:21 910

原创 【探索数据结构与算法】选择排序:原理、实现、优化与分析(图文详解)

在众多排序算法中,选择排序以其简洁直观的特点而著称。尽管在效率上不是最优的,特别是对于大规模数据集而言,但选择排序的算法思想却蕴含着深刻的逻辑和广泛的应用场景。通过不断选择剩余元素中的最小(或最大)元素,并将其放置到序列的起始位置,选择排序以一种简单而直接的方式完成了数据的排序。

2024-09-17 10:24:23 668

原创 【探索数据结构与算法】希尔排序原理、实现与分析(图文详解)

希尔排序(Shell Sort)是插入排序的一种更高效的改进版本,也称为缩小增量排序。

2024-09-16 21:16:26 1285

原创 【探索数据结构与算法】插入排序:原理、实现与分析(图文详解)

因此,第i个元素需要比较i次(其中i从2开始,直到n),总共需要进行的比较次数大约为1 + 2 + 3 + ... + (n-1) = n(n-1)/2,时间复杂度为O(n^2)。当输入数组已经是排序状态时,插入排序的性能最优。插入排序是一种原地排序算法,它只需要一个额外的存储空间来暂存当前需要插入的元素(即“key”),而不需要额外的数组来存储排序过程中的数据。在插入排序过程中,如果两个相等的元素,后面的元素不会移动到前面元素的前面,而是直接插入到与它相等的元素之后,从而保持了原有的相对顺序。

2024-09-16 20:32:31 1192

原创 掌握C语言文件操作

磁盘上的文件就是文件。然而在程序设计中,我们所谈的文件有两种,一种是程序文件,另一种是数据文件(从文件功能的角度来分类的)文件名一个文件要有一个唯一的文件标识,以便用户识别和引用,这就是文件名⽂件名包含3部分:⽂件路径+⽂件名主⼲+⽂件后缀程序文件与数据文件。

2024-08-24 19:34:51 847

原创 【探索数据结构与算法】向上调整建堆与向下调整建堆的时间复杂度

堆排序是一种优于冒泡排序的算法, 那么在进行堆排序之前, 我们需要先创建堆, 那么这个建堆的时间复杂度是多少呢?

2024-08-23 13:05:24 363

原创 【探索数据结构与算法】堆的具体实现和应用

目录一.堆的基本概念二.堆的结构定义 三.堆的接口实现 1.初始化2.销毁 3.向上调整算法(重要) 4.入堆 5.向下调整算法(重要) 6.出堆 7.取堆顶元素 8.对堆判空 9.获取堆的数据个数 四.C语言实现堆的完整代码 Heap.h Heap.c test.c 堆排序:数据流中的TopK问题: 堆的特性数组与堆的关联 为什么选择数组?注意:我们只是把数组在逻辑上想象成了抽象的堆,其实它本质上就是数组 数组与堆的映射关系(重要) 堆的结构定义与顺序表基本是一致的,这也更说明了堆的概

2024-08-21 22:30:00 558

原创 【数据结构算法经典题目刨析(c语言)】使用栈实现队列(图文详解)

超详解使用栈实现队列(图文详解)

2024-08-18 13:26:54 462

原创 【数据结构算法经典题目刨析(c语言)】使用数组实现循环队列(图文详解)

使用数组实现循环队列(图文详解)

2024-08-17 23:16:58 1149

原创 【数据结构算法经典题目刨析(c语言)】使用队列实现栈(图文详解)

使用队列实现栈(图文详解)

2024-08-12 23:07:20 821

原创 【探索数据结构与算法】使用单链表实现队列

使用单链表实现队列详解

2024-08-09 23:44:06 1098

原创 【探索数据结构与算法】——深入了解栈数据结构(图文详解)

全网这一篇就够了。深入了解栈数据结构(图文详解)

2024-08-09 19:40:37 1014

原创 【探索数据结构与算法】——深入了解双向链表(图文详解)

【探索数据结构与算法】——深入了解单链表(图文详解)

2024-08-08 19:57:17 1130

原创 【探索数据结构与算法】——深入了解单链表

单链表详解

2024-08-08 16:22:21 612

原创 【探索数据结构与算法】——基于顺序表实现通讯录

顺序表实现通讯录的功能.

2024-08-07 10:11:34 650

原创 【探索数据结构与算法(C语言)】——顺序表

顺序表的基本操作(超详细)、功能、代码实现​​​

2024-08-06 23:01:17 592

原创 【数据结构算法经典题目刨析(c语言)】括号匹配问题(图文详解)

括号匹配问题(图文详解)

2024-08-04 16:23:02 403

原创 【数据结构算法经典题目刨析(c语言)】求带环链表的入环节点(图文详解)

两种方法求带环链表的入环节点(图文详解)

2024-08-02 18:58:53 713

原创 【数据结构算法经典题目刨析(c语言)】判断链表是否有环(图文详解)

快慢指针法判断链表是否有环(图文详解)

2024-08-02 17:25:20 414

原创 【数据结构算法经典题目刨析(c语言)】随机链表的复制(图文详解)

随机链表的复制(图文详解)

2024-08-01 21:21:34 985

原创 【数据结构算法经典题目刨析(c语言)】链表的回文结构(图文详解)

链表的回文结构(图文详解)

2024-08-01 11:04:53 884

原创 【数据结构算法经典题目刨析(c语言)】反转链表(图文详解)

反转链表问题解决

2024-08-01 09:51:22 352

原创 【数据结构算法经典题目刨析(c语言)】顺序表和链表的区别(图文详解)

这是因为CPU在访问数据时,为了更快速的访问,CPU会把内存中的数据放在更快的存储设备(高速缓存),如果访问数据在缓存,缓存命中,直接访问,不在缓存叫不命中,要把数据从内存加载到缓存,再访问,但在放入时,CPU会以自身字长(可相当于好几个要访问的数据空间大小)大小的空间把要访问的数据放入缓存中,又因顺序表是连续的所以一次可以把好几个数据放入缓存。为什么顺序表的缓存利用率高于链表呢?

2024-07-31 14:34:08 739

原创 数据结构算法经典题目刨析(c语言)返回单链表的倒数第 k 个节点(图文详解)

详解返回单链表的倒数第 k 个问题

2024-07-30 07:59:39 374

原创 数据结构算法经典题目刨析(c语言)相交链表求交点(图文详解)

详解求相交链表交点

2024-07-29 15:21:52 429

原创 【数据结构算法经典题目刨析(c语言)】移除链表元素(图文详解)

两种方法解决移除链表元素问题

2024-07-29 11:20:43 1015

原创 【数据结构算法经典题目刨析(c语言)】合并两个有序链表(图文详解)

合并两个有序链表详解

2024-07-29 09:34:52 516

原创 【数据结构算法经典题目刨析(c语言)】环形链表的约瑟夫问题(图文详解)

环形链表约瑟夫问题详解

2024-07-28 19:47:45 1074

原创 【数据结构算法经典题目刨析(c语言)】求链表的中间结点(图文详解)

求链表的中间结点详解

2024-07-28 13:28:04 702

原创 【数据结构算法经典题目刨析(c语言)】合并两个有序数组、 移除元素(图文详解)

经典算法OJ题1: 移除元素经典算法OJ题2: 合并两个有序数组

2024-07-13 15:11:47 765

原创 超详解C++类与对象(上)

面向过程和面向对象初步认识2.类的引入3.类的定义4.类的访问限定符及封装5.类的作用域6.类的实例化7.类的对象大小的计算8.类成员函数的this指针

2024-05-23 20:22:02 639 2

原创 从c语言到c++快速入门(下)

函数重载,引用,内联函数,auto关键字,范围for,nullptr

2024-05-22 19:11:28 604 5

原创 从c语言到c++快速入门(上)

c++快速入门

2024-05-21 21:50:46 1050 3

原创 详解C语言之动态内存管理

详细介绍动态内存函数:(1) malloc函数(2) calloc函数(3) realloc函数 以及动态内存的常见错误

2024-05-17 23:19:54 600 4

原创 预处理详解

预定义符号2. #define定义常量3. #define定义宏4. 带有副作⽤的宏参数5. 宏替换的规则6宏函数的对⽐7. #和##8. 命名约定9. #undef10. 命令⾏定义11. 条件编译12. 头⽂件的包含

2024-05-13 22:58:43 957 8

原创 编译和链接

忽略细节,简单粗略的理解编译和链接的大致过程

2024-05-11 18:52:10 1053 6

原创 掌握C语言函数——内存操作函数

1.memcpy使⽤和模拟实现2. memmove使⽤和模拟实现3. memset函数的使⽤4. memcmp函数的使⽤

2024-05-08 21:18:00 917

原创 简单认识使用函数strerror和perror

函数strerror和perror

2024-05-06 21:27:26 329 1

空空如也

空空如也

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

TA关注的人

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