自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Linux - 进程的概念、状态、僵尸进程、孤儿进程及进程优先级

进程基本概念;描述进程-PCB;查看进程:通过系统目录查看、通过ps命令查看;通过系统调用获取进程的PID和PPID;通过系统调用创建进程- fork初始:fork函数创建子进程、使用if进行分流;Linux进程状态:运行状态-R浅度睡眠状态-S深度睡眠状态-D暂停状态-T僵尸状态-Z死亡状态-X;僵尸进程;孤儿进程;进程优先级。

2024-07-23 14:21:24 767 12

原创 Linux - 冯-诺依曼体系结构、初始操作系统

冯•诺依曼体系:结构推导;内存提高效率的方法;数据的流动过程;体系结构相关知识;初始操作系统:定位;设计目的;操作系统之上之下分别有什么;管理精髓:先描述,再组织。

2024-07-17 09:19:33 1434 29

原创 Linux - 基础开发工具(yum、vim、gcc、g++、make/Makefile、git、gdb)

Linux软件包管理器 - yum:安装软件方式、认识yum、查找软件包、安装软件、实现本地机器和云服务器之间文件互传、卸载软件;编辑器vim:基本概念、各模式切换、命令模式各命令汇总、底行模式各命令汇总、vim的简单配置;编译器:gcc/g++作用、语法、预处理、编译、汇编、链接、静态库与动态库;调试器:gdb使用须知、命令汇总;项目自动化构建工具:make/Makefile重要性、依赖关系方法、多文件编译、make原理、项目清理;程序 - 进度条:行缓冲区、 \r和\n、进度条展示;git;gdb。

2024-07-14 20:56:05 1538 23

原创 Linux - Shell 以及 权限问题

Shell的运行原理;Linux权限问题:Linux权限的概念:如何实现用户账号之间的切换、如何仅提升当前指令的权限、如何将普通用户添加到信任列表;Linux权限管理:文件访问者的分类(人)、文件类型和访问权限(事物属性)、文件权限值的表示方法;文件访问权限的相关设置方法:如何改变文件的访问权限、如何改变文件的拥有者、如何改变文件的所属组、如何修改文件的掩码;目录的权限、粘滞位。

2024-07-05 11:14:12 1179 29

原创 Qt——升级系列(Level Eight):界面优化

QSS:背景介绍、基本语法、QSS设置方式:指定控件样式设置、全局样式设置、从文件加载样式表、使用Qt Designer 编辑样式;选择器:选择器概况、子控件选择器、伪类选择器;样式属性:盒模型;控件样式示例:按钮、复选框、单选框、输入框、列表、菜单栏、登录界面。绘图:基本概念、绘制各种形状:绘制线段、矩形、圆形、文本、设置画笔、画刷;绘制图片:绘制简单图片、缩放图片、旋转图片;特殊的画图设备:QPixmap、QImage、QPicture。

2024-07-03 15:33:31 974 14

原创 Qt——升级系列(Level Seven):事件、文件

Qt事件:事件介绍、事件的处理、按键事件、鼠标事件、定时器、事件分发器、事件过滤器,Qt文件:Qt文件概述、输入输出设备类、文件读写类、文件和目录信息类。

2024-07-03 10:59:04 870 6

原创 Qt——升级系列(Level Six):Qt窗口

Qt窗口;菜单栏:创建菜单栏、在菜单栏中添加菜单、创建菜单栏项、在菜单栏之间添加分割线;工具栏:创建工具栏、设置停靠位置、设置浮动属性、设置移动属性;状态栏:状态栏的创建、在状态栏中显示实时消息、在状态栏中显示永久消息;浮动窗口:浮动窗口的创建、设置停靠的位置;对话框:对话框介绍、对话框分类:模态对话框、非模态对话框、混合属性对话框、Qt内置对话框:消息对话框、颜色对话框、文件对话框、字体对话框 、输入对话框。

2024-06-15 12:23:23 1141 25

原创 Qt——升级系列(Level Five):显示类控件、输入类控件、多元素控件、容器类控件、布局管理器

显示类控件:Label、LCD Number、ProgressBar、Calendar Widget,输入类控件:Line Edit、Text Edit、Combo Box、Spin Box、Date Edit & Time Edit、Dial、Slider,多元素控件:List Widget、Table Widget、Tree Widget,容器类控件:Group Box、Tab Widget,布局管理器:垂直布局、水平布局、网格布局、表单布局、Spacer。

2024-06-10 23:48:59 1363 21

原创 Qt——升级系列(Level Four):控件概述、QWidget 核心属性、按钮类控件

控件概述;QWidget 核心属性:核心属性概览、enabled、geometry、windowTitle、windowIcon、windowOpacity、cursor、font、toolTip、focusPolicy、styleSheet;按钮类控件:Push Button、Radio Buttion、Check Box、Tool Button。

2024-06-10 08:00:41 430 19

原创 Qt——升级系列(Level Three):信号和槽

信号和槽概述:信号的本质、槽的本质;信号和槽的使用:连接信号和槽、查看内置信号和槽、通过Qt Creator 生成信号槽代码;自定义信号和槽:基本语法、带参数的信号和槽;信号和槽的连接方式:一对一、一对多、多对一;信号和槽的其他说明:信号与槽的断开、Qt4版本信号与槽的连接、使用 Lambda 表达式定义槽函数、信号与槽的优缺点。

2024-06-07 21:40:14 922 29

原创 Qt——升级系列(Level Two):Hello Qt 程序实现、项目文件解析、Qt 编程注意事项

Hello Qt 程序实现:使用“按钮”实现、使用 "标签" 实现,项目文件解析:解释 .pro、解释widget.h、解释 main.cpp、解释widget.cpp、解释widget.ui,Qt 编程注意事项:Qt 中的命名规范、Qt Creator 中的快捷键、使用帮助文档、认识对象模型(对象树)、Qt 窗口坐标体系。

2024-06-02 23:26:56 1142 32

原创 Qt——升级系列(Level One):背景、环境搭建、使用

Qt背景介绍:什么是Qt、Qt发展史、Qt支持的平台、Qt版本、Qt的优点、Qt的应用场景、Qt的案例,搭建Qt开发环境:Qt的开发工具概述、Qt SDK 的下载和安装、验证Qt SDK 安装是否成功、Qt 环境变量配置,认识使用 Qt Creator:使⽤ Qt Creator 新建项⽬、认识 Qt Creator 界面。

2024-06-02 09:24:02 1308 16

原创 深入研究C++多态与虚函数机制

多态的概念;多态的定义及实现:多态的构成条件、虚函数、虚函数的重写、虚函数重写的两个例外、override和final(C++11)、重载、覆盖(重写)、隐藏(重定义);抽象类:概念,接口继承和实现继承;多态的原理:虚函数表、多态的原理、动态绑定和静态绑定;单继承和多继承关系的虚函数表:单继承中的虚函数表、多继承中的虚函数表、菱形继承、菱形虚拟继承;继承和多态常见的面试问题:概念考察,问答题。

2024-05-29 22:01:56 848 13

原创 深入探索C++继承机制:从概念到实践的全面指南

继承的概念及定义:继承的概念;继承的定义:定义格式;继承方式和访问限定符;继承基类成员访问方式的变化;默认继承方式,基类和派生类对象赋值转换,继承中的作用域,派生类的默认成员函数,继承与友元,继承与静态成员,继承的方式,菱形虚拟继承,菱形虚拟继承原理,继承的总结和反思,相关笔试面试题。

2024-05-29 11:25:15 1685 18

原创 深入探索C++模板进阶:掌握非类型参数、特化技巧与分离编译的艺术

非类型模板参数,模板的特化:概念、函数模板特化,类模板特化:全特化、偏特化、类模板特化应用示例,模板的分离编译:分离编译概念、模板的分离编译、解决方法;模板总结。

2024-05-27 17:22:49 866 6

原创 精通C++ STL(二):string类的模拟实现

string类各函数接口。

2024-05-27 11:34:41 924 13

原创 探索二叉树的奥秘:全面解析遍历技巧与在线OJ挑战实战

二叉树的遍历:前序遍历、中序遍历、后序遍历、层序遍历,二叉树基础OJ题:单值二叉树、检查两颗树是否相同、对称二叉树、二叉树的前序遍历、二叉树的中序遍历、二叉树的后序遍历、另一颗树的子树。

2024-05-21 21:05:13 824 11

原创 精通C++ STL(一):解开string类的面纱与高效应用

string的定义方式;string的插入:push_back进行尾插、insert插入;string的拼接:append函数;string的删除:pop_back进行尾删、erase删除;string的查找:find函数、rfind函数;string的比较:compare函数;string的替换:replace函数、string的交换、swap;string的大小和容量:size函数或length函数、max_size、capacity函数、resize、reserve、clear、empty .....

2024-05-19 23:26:28 1507 16

原创 深入探索C++模板:解密函数模板与类模板的奥秘

泛型编程、函数模板:函数模板的概念;函数模板的格式;函数模板的原理;函数模板的实例化;函数模板的匹配原则、类模板类:模板的定义格式;类模板的实例化。

2024-05-16 20:31:34 970 10

原创 深入探索C/C++内存管理

C/C++内存分布、C语言中动态内存管理方式calloc;realloc;free、C++中动态内存管理方式、new和delete操作内置类型;new和delete操作自定义类型、operator new和operator delete函数、new和delete的实现原理、内置类型;自定义类型、定位new和表达式(placement-new)、常见面试题、malloc/free和new/delete的区别?内存泄漏

2024-05-16 17:41:30 926 6

原创 C++类与对象基础探秘系列(三)

再谈构造函数、构造函数体赋值、初始化列表、explicit关键字、static成员、友元、友元函数、友元类、内部类、匿名对象、再次理解类和对象

2024-05-15 17:48:29 641 6

原创 C++自定义日期类的精彩之旅(详解)

构造函数、打印函数、日期and天数、日期 += 天数、日期 + 天数、日期 -= 天数、日期 - 天数、前置and后置、前置 ++、后置 ++、前置 --、后置--、日期类的大小关系比较、>运算符的重载、==运算符的重载、>=运算符的重载、

2024-05-14 22:13:43 689 3

原创 C++类与对象基础探秘系列(二)

类的6个默认成员函数、构造函数、构造函数的概念、构造函数的特性、析构函数、析构函数的概念、析构函数的特性、拷贝构造函数、拷贝构造函数的概念、拷贝构造函数的特性、赋值运算符重载、运算符重载、赋值运算符重载、const成员、const修饰类的成员函数、取地址及const取地址操作符重载

2024-05-14 17:20:21 1008 1

原创 C++类与对象基础探秘系列(一)

面向过程和面向对象初步认识、类的引入、类的定义、类的访问限定符及封装、访问限定符、封装、类的作用域、类的实例化、类的对象模型、如何计算类对象的大小、类对象的存储方式、结构体内存对齐规则、类成员函数的this指针、this指针的引出、this指针的特性、C语言和C++实现Stack的对比

2024-05-13 18:36:00 1023 3

原创 C++新手村指南:入门基础

定义命名空间,需要使用到namespace关键字,后面跟命名空间的名字,然后接一对{}即可,{}中即为命名空间的成员。//命名空间的普通定义namespace N1 //N1为命名空间的名称//在命名空间中,既可以定义变量,也可以定义函数int a;//命名空间的嵌套定义namespace N1 //定义一个名为N1的命名空间int a;int b;namespace N2 //嵌套定义另一个名为N2的命名空间int c;int d;

2024-05-08 23:45:05 709 3

原创 深入解析:C语言中的八大经典排序算法全揭秘

插入排序(Insertion Sort)希尔排序(Shell Sort)选择排序(Selection Sort)堆排序(Heap Sort)冒泡排序(Bubble Sort)快速排序(Quick Sort)归并排序(Merge Sort)计数排序(Counting Sort)

2024-05-08 14:23:32 982 1

原创 Linux入门-(超详细指令汇总)

ls- 列出目录内容。cd- 切换目录。pwd- 显示当前工作目录。mkdir- 创建新目录。rm- 删除文件或目录(使用rm -r删除目录)。cp- 复制文件或目录。mv- 移动或重命名文件或目录。

2024-05-06 16:37:29 605 1

原创 如何生成随机数

rand函数会返回⼀个伪随机数,这个随机数的范围是在0~RAND_MAX之间,这个RAND_MAX的大小是依赖编译器上实现的,但是大部分编译器上是32767。rand函数的使用需要包含⼀个头文件是:stdlib.h我们会发现一次运行中产生的5个数字是相对随机的,下一次运行程序生成的结果会和上一次一模⼀样。如果再深入了解⼀下,我们就不难发现,其实rand函数生成的随机数是伪随数,伪随机数不是真正的随机数,是通过某种算法生成的随机数。真正的随机数的是无法预测下⼀个值是多少的。

2024-04-21 23:36:20 791

原创 堆的概念、堆的向下调整算法、堆的向上调整算法、堆的基本功能实现

小堆:将根结点最小的堆叫做小堆,也叫最小堆或小根堆。大堆:将根结点最大的堆叫做大堆,也叫最大堆或大根堆。

2024-04-21 21:30:10 946 1

原创 树、二叉树、满二叉树、完全二叉树(详解)

树是一种非线性的数据结构,它是由n(n>=0)个有限结点组成的一个具有层次关系的集合。把它叫做“树”,是因为它看起来像一颗倒挂的树,也就是说它是根朝上,而叶朝下的。

2024-04-20 11:48:46 1104

原创 链表 - OJ(超清晰思路+实现)

我们假设这两个链表的结点个数之差为count,我们可以让指向较长链表的指针先向后移动count步,然后指向长链表的指针和指向短链表的指针再同时向后移动,这样这两个指针最后会同时走到各自的链表结尾(NULL)。注:在寻找链表的最后一个结点的同时,我们便可以计算两个链表的长度,只不过这时我们只遍历到了最后一个结点,并没有遍历到NULL,所以统计的两个链表的结点个数都比链表实际长度少一,但这两个值相减后依然是这两个链表的结点个数差。这时返回该结点地址即可。新链表是通过拼接给定的两个链表的所有节点组成的。

2024-04-20 08:25:10 882

原创 栈和队列OJ(面试高频题 - 看完包!!!拿捏)

当需要进行出栈操作时,将不为空的队列中的数据导入空队列,仅留下一个数据,这时将这个数据返回并且删除即可。当字符串遍历完后,检测栈是否为空,若为空,则字符串有效,若不为空,说明有前括号未匹配,字符串无效。注意:环形队列的队尾不能像常规队列中队尾一样指向最后一个数据,如果这样的话,我们将不能区别环形队列的状态是空还是满,因为此时队头和队尾都指向同一个位置。其中,压入操作总是把元素添加到非空队列的末尾,而弹出操作时,会先确保所有元素都在同一个队列内,并且按照栈的“后进先出”原则进行操作。设计你的循环队列实现。

2024-04-19 15:25:33 684 1

原创 栈和队列-介绍与实现(超级!!!详解-C语言)

栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。队列:只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表。

2024-04-19 08:34:21 1109 1

原创 环形链表问题(详解+OJ)

​环形链表是一种特殊类型的链表数据结构,其最后一个节点的"下一个"指针指向链表中的某个节点,形成一个闭环。​

2024-04-18 17:33:26 591 1

原创 链表详解(C语言实现)——带头双向循环链表

前面说到,链表的结构一共有八种:带头单向循环链表、带头单向非循环链表、带头双向循环链表、带头双向非循环链表、无头单向循环链表、无头单向非循环链表、无头双向循环链表、无头双向非循环链表。在这八种结构中,我们只挑两种来进行刨析,即无头单向非循环链表和带头双向循环链表。无头单向非循环链表:结构简单,一般不会用来存储数据。实际上更多是作为其他数据结构的子结构,如哈希桶、图的链接表等等。带头双向循环链表:结构最复杂,一般用在单独存储数据。实际中使用的链表数据结构都是带头双向循环链表。

2024-04-16 15:24:29 1657

原创 链表详解(C语言实现)——无头单向非循环链表

链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成。每个结点包括两个部分:一个是存储数据元素的数据域,另一个是存储下一个结点地址的指针域。实际中,链表的结构多种多样:通过以上的这些情况组合起来,就有八种链表结构。即带头单向循环链表、带头单向非循环链表、带头双向循环链表、带头双向非循环链表、无头单向循环链表、无头单向非循环链表、无头双向循环链表、无头双向非循环链表。

2024-04-16 11:08:13 736 1

原创 顺序表详解(C语言实现)

顺序表是用一段物理地址连续的存储单元依次存储数据元素的线性结构,一般情况下采用数组存 储。在数组上完成数据的增删查改。顺序表一般可以分为:1. 静态顺序表:使用定长数组存储元素。2. 动态顺序表:使用动态开辟的数组存储。首先,我们要创建一个顺序表类型,该顺序表类型包括了顺序表的起始位置、记录顺序表内已有元素个数的计数器(size),以及记录当前顺序表的容量的变量(capacity)。

2024-04-15 19:56:00 433

原创 数据在内存中的存储

基本的内置类型char //字符数据类型short //短整型int //整形long //长整型long long //更长的整形float //单精度浮点数double //双精度浮点数类型的意义:1.是用来创建变量,变量的创建需要在内存中开辟一块内存空间,用来存储变量的值。2.类型的大小决定了开辟内存空间的大小。

2023-11-04 23:15:52 53 1

原创 一维、二维数组(C语言)

数组的定义:是一组相同类型元素的集合。

2023-10-31 22:46:14 81 1

原创 函数题目练习

用一个函数,打印乘法口诀表,口诀表的行数和列数自己指定如:输入9,输出9*9乘法口诀表,输入12,输出12*12乘法口诀表利用两个循环嵌套即可解决问题。

2023-09-24 17:46:26 42 1

空空如也

空空如也

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

TA关注的人

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