自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 排序算法学习笔记

快速排序(用处最广,面试提问最多)原理:(以从大到校排列为例)设置一个基准值(默认数组第一个元素),两个哨位,这两个哨位作用就是用来判断当前位置的值和基准值的大小。nLeft为左哨位,nRight为右哨位,第一步先从右哨位出发,寻找到第一个比基准值小的值,记录当前位置,然后再从左哨位出发,找出第一个比基准值大的值,记录位置,再将左右哨位值互换,然后继续前进,直到左右哨位相遇,跳出循环,将相遇位置的值和基准值做互换,就完成了第一轮排序,基准值左侧全部比基准值小,右侧全部比基准值大。 完成...

2022-04-07 20:22:20 240

原创 二叉树遍历

节点结构:/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */前序遍历://递归遍历void PreScan(TreeNode* T){ if(!

2022-04-07 10:15:20 1154

原创 C++11新特性学习汇总(主要)

1:auto类型推导基本用法:double func();auto a = 1; //intauto b = func(); //double//简化复杂的变量类型vector<string> vstr;vector<string>::iterator it = vstr.begin();//用auto声明auto it = vstr.begin();2:基于范围的for循环基本用法://基于范围的for循环后的括号由冒号“:

2022-04-06 19:53:51 693

原创 unordered_map和map学习使用笔记

unordered_map:关联容器,内部采用hash表结构,具有快速检索的功能特性:1:可以通过key来快速检索value,主要可以用于处理上位机字符串指令(先分割字符串,然后按照(key,value)存储;2:无序性,key值排序就是直接按照插入的顺序进行排序;3:键值唯一;使用:1:迭代器的使用(遍历元素)unordered_,map<char, int > Map;迭代器:unordered_,map&lt...

2022-04-06 15:21:57 842

原创 Qt connect第五个参数使用

connect用于连接qt的信号和槽,在qt编程过程中不可或缺。它其实有第五个参数,只是一般使用默认值,在满足某些特殊需求的时候可能需要手动设置。Qt::AutoConnection: 默认值,使用这个值则连接类型会在信号发送时决定。如果接收者和发送者在同一个线程,则自动使用Qt::DirectConnection类型。如果接收者和发送者不在一个线程,则自动使用Qt::QueuedConnection类型。Qt::DirectConnection:槽函数会在信号发送的时候直接被调用,槽函数运行于信号发送

2021-10-05 16:00:48 127

原创 Qt5解决TCP粘包问题(客户端拆包)

首先说前提:对收发数据双方事先定义一个数据包头(包头格式可以自定,但是必须包含整个报文长度),发送数据格式为:数据包头+数据;思路:Qt自身封装的readyRead作为接收网络数据接口,可以关联一个槽函数,每次接收到网络数据就会响应此槽函数,对数据进行拆包在这个槽函数中进行;connect(Socket, &QTcpSocket::readyRead, this, &TcpClient::ReceiveData); 然后就是...

2021-09-19 16:05:08 2864 1

空空如也

空空如也

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

TA关注的人

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