自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 第五章:map和set

set是一种关联式容器,它存储唯一的键,并且这些键按照严格的顺序进行排序。set中的每个元素都是唯一的,不能有重复元素。set会根据元素的值自动进行排序,默认情况下是按照从小到大的顺序进行排序。set的插入、删除和查找的时间复杂度为 O(log n)。set中的底层使用二叉搜索树来实现。multiset 与 set 类似,但允许存储重复的键值。multiset 也基于红黑树实现,保证了高效的元素查找、插入和删除操作,其时间复杂度为 O(log n)。

2024-07-23 12:23:17 626

原创 2.快慢指针/左右指针/单调性

快慢指针,左右指针,单调性力扣11,202,611

2024-07-22 16:07:29 375

原创 Qt:26.Qt项目:贪吃蛇游戏

Qt项目:贪吃蛇游戏

2024-07-19 16:40:14 315

原创 1.时间复杂度/空间复杂度

斐波那契数列,空间复杂度为O(N),开辟栈空间是一边开辟一边释放的,最多创建到N个,就会开始边释放边开辟,最终不会超过N个。一个未知的变量,Q(N),这个值可能很大可能很小,所以复杂度可能大小变化。斐波那契数列,时间复杂度O(2^N),递归长度为n,每次每项分裂为两项。一个具体的数值,O(1),这个值表示是一个固定值,复杂度是固定的。判断是Q(N)和O(1),主要还是看运行时间是否固定。二分法,时间复杂度O(long N)冒泡,时间复杂度O(N^2)

2024-07-17 18:20:50 288

原创 Qt:25.QSS选择器(类型选择器、类选择器、id选择器、并集选择器、子控件选择器、伪类选择器)

QSS选择器(类型选择器、类选择器、id选择器、并集选择器、子控件选择器、伪类选择器)

2024-07-14 23:38:06 465

原创 Qt:24.QSS设置控件样式(QSS介绍、QSS格式、选择器和键值对、为控件设置QSS样式、子控件继承QSS样式、设置全局样式、局部样式和全局样式重叠问题、设置单独的样式文件)

QSS设置控件样式(QSS介绍、QSS格式、选择器和键值对、为控件设置QSS样式、子控件继承QSS样式、设置全局样式、局部样式和全局样式重叠问题、设置单独的样式文件,专门存储所有控件的样式设置、主用的设置样式的方法)

2024-07-14 03:00:16 981

原创 Qt:23.QFile类(QFile类介绍、打开文件方法、读取文件方法、写入文件方法、关闭文件/重命名文件/检查文件是否存在/删除文件、实例演示)

QFile 类是 Qt 框架中的一个用于处理文件的类。它提供了文件的读取、写入和关闭等功能,是一个非常强大的文件操作工具。2.打开文件方法:open(QIODevice::OpenMode mode):在构造函数中声明了文件路径后,以指定模式打开文件。常见模式有:QIODevice::ReadOnly:只读模式QIODevice::WriteOnly:只写模式QIODevice::ReadWrite:读写模式QIODevice::Append:追加模式QIODevice::Truncate:

2024-07-13 05:07:49 432

原创 Qt:22.鼠标相关事件(实例演示——鼠标进入/离开某控件的事件、鼠标按下事件、鼠标释放事件、鼠标双击事件)

Qt鼠标相关事件(实例演示——鼠标进入/离开某控件的事件、鼠标按下事件、鼠标释放事件、鼠标双击事件)

2024-07-13 02:47:59 660

原创 Qt:21.事件(事件的介绍、事件的基类、用户输入事件、窗口和界面事件、其他系统事件、事件处理的思路)

Qt 的事件(Event)是表示应用程序中的各种动作或消息的对象。负责处理用户交互、系统通知以及应用程序内的各种状态变化。事件可以由用户动作(如鼠标点击、键盘输入)引发,也可以由系统或应用程序自身产生。在Qt中,槽函数就是对事件的进一步封装,但是槽函数封装的信号有限,不能完全对应可能产生的情况。此时就需要重写事件处理函数。

2024-07-12 21:03:19 972

原创 Qt:20.对话框(对话框介绍、对话框的一些使用方法、对话框内存泄漏问题/释放对话框资源、代码方式创建自定义对话框、图形化界面创建自定义对话框、对话框的模态和非模态、对话框分类)

对话框(对话框介绍、对话框的一些使用方法、对话框内存泄漏问题/释放对话框资源、代码方式创建自定义对话框、图形化界面创建自定义对话框、对话框的模态和非模态、对话框分类、QMessageBox-消息对话框、为QMessageBox添加自定义按钮、通过静态方法,一句话创建一个messageBox、QColorDialog-颜色对话框、QFileDialog-文件对话框)

2024-07-12 03:46:21 1022

原创 Qt:19.浮动窗口/子窗口(子窗口介绍、代码方式创建子窗口、设置子窗口标题、为子窗口添加控件、设置子窗口停靠位置)

在 Qt 中,可以创建和管理子窗口(子窗口体)以实现多窗口应用程序。子窗口可以是对话框、独立窗口或者 MDI(多文档界面)子窗口。通过QDockWidget类创建子窗口。创建子窗口对象:QDockWidget* dockWidget=new QDockWidget();将子窗口添加到主窗口:this->addDockWidget(Qt::LeftDockWidgetArea,dockWidget);设置子窗口标题:dockWidget->setWindowTitle("这是子窗口的标题");

2024-07-11 19:37:08 586

原创 Qt:18.状态栏(状态栏介绍、代码方式创建状态栏、在状态栏显示临时信息、在状态栏创建控件)

Qt状态栏(状态栏介绍、代码方式创建状态栏、在状态栏显示临时信息、在状态栏创建控件)

2024-07-11 18:03:29 356

原创 Qt:17.工具栏(工具栏介绍、代码方式创建工具栏、为动作绑定图标、图标的ToolTip设置、动作同时放在菜单栏和工具栏工具栏初始位置设置、设置工具栏允许停靠的位置(是否可以悬浮,是否可以移动等)

Qt工具栏介绍、代码方式创建工具栏、为动作绑定图标、图标的ToolTip设置、动作同时放在菜单栏和工具栏工具栏初始位置设置、设置工具栏允许停靠的位置(是否可以悬浮,是否可以移动等

2024-07-11 17:36:51 886

原创 Qt:16.窗口_菜单栏(菜单栏的介绍、ui界面创建菜单/菜单项的方法、通过代码方式创建菜单、为动作绑定槽函数、为动作绑定快捷键、 为动作添加动作、分割线,分隔开部分动作、为动作/菜单项设置图标)

在 Qt 中,菜单栏是一个常用的 GUI 组件,用于组织和管理应用程序的各种命令。QMenuBar 是 Qt 提供的菜单栏类,它通常位于窗口的顶部,并包含一个或多个菜单,每个菜单又包含一个或多个动作项(QAction)。一个主窗口最多只有一个菜单栏。

2024-07-11 04:51:11 852 3

原创 Qt:15.布局管理器(QVBoxLayout-垂直布局、QHBoxLayout-水平布局、QGridLayout-网格布局、拉伸系数,控制控件显示的大小)

设置布局左侧的边距。获取当前左边距:layout->contentsMargins().left()设置布局顶部的边距。获取当前顶部边距:layout->contentsMargins().top()设置布局右侧的边距。获取当前右边距:layout->contentsMargins().right()设置布局底部的边距。获取当前底部边距:layout->contentsMargins().bottom()设置子控件之间的间距。

2024-07-11 02:47:57 1344

原创 Qt:14.容器类控件(QGroupBox、QTabWidget-创建选项卡式界面的控件)

title描述:设置或获取 QGroupBox 的标题。类型:QString默认值:空字符串alignment描述:设置分组框架中标题的对齐方式。类型:Qt::AlignmentFlag默认值:Qt::AlignLeftflat描述:指定分组框架是否显示为平的(只有最上面的一条线,无其他边框)。类型:bool默认值:falsecheckable描述:指定是否可以通过点击标题来切换分组框架的选中状态。类型:bool默认值:falsechecked。

2024-07-10 16:16:11 372

原创 Qt:13.多元素控件(QLinstWidget-用于显示项目列表的窗口部件、QTableWidget- 用于显示二维数据表)

count返回列表中项目的数量。count()获取当前选中的项目。currentRow获取当前选中项目的行号。如果未选中返回-1。设置选择模式,可以是单选、多选等。item获取指定行的项目。itemWidget获取项目关联的窗口小部件。设置是否启用项目排序。设置或获取拖放操作中的指示位置。addItem向列表中添加一个项目。获取/设置当前选中的项目。insertItem在指定行插入一个项目。item获取指定行的项目。sortItems。

2024-07-10 15:36:15 621

原创 Qt:12.输入类控件(QSpinBox-整数值输入的小部件、QDateEdit、QTimeEdit、QDateTimeEdit- 日期和时间输入的控件)

suffix显示在值后面的文本。prefix显示在值前面的文本。minimum允许的最小值。maximum允许的最大值。singleStep每次点击箭头按钮时增减的步长。stepType步长的类型,决定了增减值的方式(整数步长或自适应步长)。value当前的值。显示整数的禁止(如十进制、十六进制等)。wrapping是否启用环绕模式。当启用时,如果增加值超过最大值,则从最小值开始,反之亦然。frame是否显示边框。

2024-07-10 03:23:24 913

原创 Qt:11.输入类控件(QLineEdit-单行文本输入控件、QTextEdit-多行文本输入控件、QComboBox-下拉列表的控件)

inputMask设置输入掩码,以限定输入格式。setInputMask(const QString &inputMask) 设置输入掩码.inputMask() 获取当前输入掩码。text控件中的当前文本。setText(const QString &text) 设置文本。text() 获取当前文本。maxLength允许输入的最大字符数。setMaxLength(int) 设置最大字符数。maxLength() 获取最大字符数。frame是否显示边框。

2024-07-09 20:59:26 1597

原创 Qt:10.显示类控件(QLabel-显示文本或图像的控件、QLCDNumber -显示数字的特殊控件、QProgressBar-进度条、QCalendarWidget-日历)

QLCDNumber 控件是 Qt 中用于显示数字的特殊控件。通常用于显示需要精确控制格式和显示方式的数字。它提供了一种类似数字显示器或LCD屏幕的视觉效果,适合显示整数或浮点数。控制小数点的显示大小。如果设置为 true,小数点将以较小的尺寸显示。digitCount设置显示数字的位数。这包括整数位和小数位的总数。mode控制显示数字的模式,可以是十进制(Dec)、十六进制(Hex)、八进制(Oct)或二进制(Bin)。设置显示数字的样式。value。

2024-07-09 01:45:13 767

原创 Qt:9.按钮类控件介绍和使用(QPushButton-普通按钮、QRadioButtion-单选按钮、QCheckBox-复选按钮、QButtonGroup类-管理一组按钮)

QPushButton 是最常见的按钮控件,表示一个可以点击的按钮。它里面可以显示文本、图标或两者,并支持各种信号和槽机制来响应用户的操作。QRadioButton 是一个用于创建单选按钮的类。单选按钮允许用户从一组选项中选择一个选项。拖拽出来的多个 QRadioButton 控件默认情况下是互斥的。QCheckBox 是 Qt 框架中用于创建复选框控件的类。复选框允许用户选择或取消选择一个或多个独立的选项。QButtonGroup 类用于管理一组按钮,并确保它们之间的互斥性。

2024-07-02 17:46:43 714

原创 Qt:8.QWidget属性介绍(focuspolicy属性-控件焦点、stylesheet属性-为控件设置样式)

focuspolicy属性-控件焦点:focuspolicy属性介绍:设置焦点策略——setFocusPolicy():获取控件的焦点策略——focusPolicy():stylesheet属性——为控件设置样式:stylesheet属性介绍:在控件上设置样式表——setStyleSheet():

2024-07-01 22:43:33 465

原创 Qt:7.QWidget属性介绍(cursor属性-光标形状、font属性-控件文本样式、tooltip属性-控件提示信息)

cursor属性介绍:获取当前光标形状——cursor():设置光标的形状——setCursor():设置自定义图片为光标:font属性-控件文本样式:font属性介绍:获取当前字体—— font():设置字体——setFont():tooltip属性介绍:设置工具提示——setToolTip():获取工具提示——toolTip():设置悬停回显持续的时间——setToolTipDuration():

2024-07-01 19:58:09 1035

原创 Qt:6.QWidget属性介绍(windowTitle属性-窗口标题、windowIcon属性-窗口图标、windowOpacity属性-窗口透明度)以及QRC机制

在 Qt 中,windowTitle 属性是 QWidget 类提供的一个属性,用于设置和获取窗口的标题文本。它通常用于设置顶级窗口的标题栏显示内容。在 Qt 中,windowIcon 是 QWidget 类提供的一个属性,用于设置和获取窗口的图标。这个图标通常显示在窗口的标题栏左侧、任务栏和窗口管理器中。它可以是一个普通的图片文件,例如 ICO、PNG 等格式。Qt 的资源系统(QRC 机制)允许你将应用程序的所有资源(例如图像、图标、UI 文件、音频文件等)打包到应用程序的可执行文件中。

2024-07-01 04:04:35 1139

原创 Qt:5.QWidget属性介绍(Enabled属性-控件可用性设置、geometry属性-控件位置/大小设置)

QWidget 是所有可视化组件的基类,几乎所有的GUI控件(如按钮、标签、窗口等)都继承自这个类。因此,QWidget 包含的属性和方法可以认为是通用的,它们可以被所有派生类使用。

2024-06-30 18:29:59 1018

原创 Qt:4.信号和槽

信号源(Sender):发出信号的对象。信号(Signal):由对象发出,用于通知某个事件的发生。用户进行不同的个操作,会触发不同的信号,比如点击按钮,勾选选择框等槽(Slot):一个函数,可以连接到信号。当信号发出时,连接到该信号的槽会被调用

2024-06-29 03:01:13 733

原创 Qt:3.项目创建、对象树、乱码问题、Qt命名规则

qt的项目中有一个以.ui为后缀的文件,他本质是一个xml文件。qt中使用F4切换头文件和对应的源文件。编写一个项目,有两种实现方式,一种是直接拖拽控件到设计页面,另一种通过纯代码的方式创建控件。代码构造界面:将代码放到widget的构造函数中。上古时期的qt使用小写风格的头文件声明风格(后面带.h后缀),在1998年C++标准成立。更改了原来的头文件风格,就是首字母大写,不加.h后缀的头文件风格。控件可以创建在堆上也可以创建在栈上。建议创建在堆上,建立在堆上时,参数要传递当前this指针,可以给

2024-06-27 01:29:00 549

原创 Qt:2.环境搭建

搭建需要的三个组件:C++编译器(gcc,cl.exe等)、Qt的SDK:软件开发工具包,Windows版本的SDK内置了C++编译器mingw、Qt的集成开发环境,IDE,Qt creator、visual studio、Eclipse等。

2024-06-25 03:19:03 631

原创 Qt:1.杂谈

Qt的优点:可以跨平台,几乎支持所有平台。接口简单,容易上手。简化了内存回收机制,半自动的垃圾回收机制,介于c++和java中间,c++为了效率要手动回收,java为了方便,会自动扫描回收但是会影响效率。qt就比较折中。开发效率很高,可以快速构建应用程序。社区氛围很好,市场份额缓慢上升。可以进行嵌入式开发。

2024-06-25 01:32:11 491

原创 leetcode144. 二叉树的前序遍历

144. 二叉树的前序遍历给你二叉树的根节点 root ,返回它节点值的 前序 遍历。递归算法很简单,你可以通过迭代算法完成吗?

2024-06-18 15:53:13 555

原创 leetcode606. 根据二叉树创建字符串

606. 根据二叉树创建字符串。给你二叉树的根节点 root ,请你采用前序遍历的方式,将二叉树转化为一个由括号和整数组成的字符串,返回构造出的字符串。空节点使用一对空括号对 "()" 表示,转化后需要省略所有不影响字符串与原始二叉树之间的一对一映射关系的空括号对。

2024-06-16 21:12:34 179

原创 leetcode236. 二叉树的最近公共祖先

leetcode236. 二叉树的最近公共祖先,给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树 T 的两个节点 p、q,最近公共祖先表示为一个节点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。”

2024-06-16 21:05:08 530

原创 第五章:搜索二叉树

二叉搜索树,又称二叉排序树-BinarySearchTree。二叉搜索树可以是空树,或者它的左右子树也分别为二叉搜索树。对于每个节点,其左子树中所有节点的值都小于这个节点的值。对于每个节点,其右子树中所有节点的值都大于这个节点的值。主要作用是可以通过中序遍历得到一个升序的序列。

2024-06-13 03:46:34 1281

原创 第五章:多态、抽象类、虚函数、虚函数表

通过同一个接口来操作不同的对象,并产生不同的结果。具体点就是去完成某个行为,当不同的对象去完成时会产生出不同的状态。

2024-06-10 22:52:29 467

原创 第五章:C++继承和组合

在 C++ 中,允许一个类(称为派生类或子类)从另一个类(称为基类或父类)中继承成员和函数。继承使得派生类可以复用基类的功能,并且可以在此基础上添加新的成员和函数,从而实现代码的复用和扩展。

2024-06-09 01:39:06 837

原创 第四章:模板进阶

在C++中,除了普通的类型参数外,模板还可以接受非类型参数(Non-type Parameter)。非类型参数是指模板参数中的一个特殊种类,它不是类型,而是一个常量表达式,可以是整数、枚举、指针等。

2024-06-08 16:40:08 411

原创 第四章:优先级队列和仿函数

优先级队列(Priority Queue)是一种特殊的队列数据结构,每个元素都有一个优先级,元素按照优先级顺序进行处理,而不是按照插入顺序。在C++中,priority_queue默认是一个最大堆,即优先级最高的元素(值最大)会首先出队。也可以通过自定义比较器来实现最小堆或其他优先级顺序。优先级队列使用要包含头文件。

2024-06-07 00:51:07 436

原创 第四章:适配器、双端队列、栈和队列(逻辑梳理,底层实现)

容器适配器详解,双端队列deque详解,stack和queue详解和模拟实现。

2024-06-03 01:46:23 593

原创 leetcode150. 逆波兰表达式求值

给你一个字符串数组tokens,表示一个根据表示的算术表达式。请你计算该表达式。返回一个表示表达式值的整数。

2024-06-02 04:45:46 244

原创 leetcode102. 二叉树的层序遍历

给你二叉树的根节点root,返回其节点值的。(即逐层地,从左到右访问所有节点)。

2024-06-02 02:36:15 418

空空如也

空空如也

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

TA关注的人

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