- 博客(47)
- 收藏
- 关注
原创 MYSQL常用命令
介绍了MYSQL的数据类型,和如何使用VS编译器连接MYSQL创建用户等一系列操作,和对应API,适合小白上手实践,含有完整代码
2023-09-25 10:41:34
428
原创 C++项目中mysql的环境配置与连接
此次项目采用动态库在项目文件夹加入mysql的库分别为libmysql.dll和include。现在我们写一个开发环境验证代码,检查一下环境是否配置成功。第一步创建好项目,选择X64架构。在包含目录中填入相对路径。至此环境已经配置完成。F7生成此时完美运行。
2023-09-18 10:13:09
480
原创 TCP三次握手,四次挥手,SYN泛洪攻击
大量的伪造SYN请求就会使服务器长时间处于SYN-RECVD状态(等到客户端的ACK确认,没有受到ACK确认则忙于重新发送SYN-ACK包),服务器的半开连接队列被占满,从而阻止其他合法用户进行访问,甚至致使服务器崩溃;客户端发出SYN请求,处于SYN_SENT状态完成第一次握手,服务器收到客户端的SYN请求,处于SYN_RCVD状态,并发出ACK以及SYN请求,完成第二次握手,客户端收到服务的SYN和ACK,处于连接状态ESTABLISH,并发出ACK请求,完成第三次握手。2、为什么要四次挥手?
2023-08-16 01:42:48
345
原创 网络编程的一些基础知识
一个数据包包括了文件,ip,和端口号,ip是为了服务器可以找到你的主机,端口号是你接受数据包的门户, 而所谓的端口监听,是指主机网络进程接受到IP数据包后,察看其的目标端口是不是自己的端口号,如果是的话就接受该数据包进行处理。会给那些有需求的进程分配协议端口(protocol port,即我们常说的端口),每个协议端口由一个正整数标识,如:80,139,445,等等。当目的主机接收到数据包后,将根据报文首部的目的端口号,把数据发送到相应端口,而与此端口相对应的那个进程将会领取数据并等待下一组数据的到来。
2023-08-10 16:20:00
118
原创 字符串总结
str.find(str2) 当str2时str的子串时,返回其在str中第一次出现的位置,如果不是子串,返回string::npos。//s1.empty()返回ture(1),false(0);//string读入有空格的用getline(cin,str);str.erase(pos,length) //pos为要删除的起始位置,length为字符个数。while(ssin >> str) //自动过滤调空格把每一段给str。
2023-05-01 00:34:08
666
原创 二叉搜索树与平衡二叉树(详解,含C++代码)
常见的平衡树有:AVL树,树堆(Treap),伸展树(Splay tree),红黑树,B树,B+树等。根节点为val的最大值,然后根据根节点的key把剩余节点分为大于key和小于key,子树依次递归。操作:如果存在左子树,则左子树的最大值就是前驱,如果不存在左子树找第一个右儿子的父节点。左旋:左子树的高度+1,右子树的高度-1。以上的操作set已经实现好了。
2023-01-07 19:56:05
589
原创 感知机详解
其中采用密度梯度下降法进行误分类驱动,使得损失函数L(w,b)不断减小为0.感知机就是一个激活函数+线性函数组合成的,可以解决二分类问题。ni表示第i个实例点在参数更新中所贡献的次数。对异或(XOR),感知机为什么不能表示异或。通过两个感知机,使其变为线性可分。或者采用核函数进行升维度。
2022-10-25 09:58:03
553
原创 统计学习概论
统计学习就是:用于对数据进行预测与分析,特别是对未知新数据进行预测与分析。从给定 的、有限的、用于学习的训练数据(training data)集合出发,假设数据是独立同分 布产生的;并且假设要学习的模型属于某个函数的集合,称为假设空间(hypothesis space);应用某个评价准则(evaluation criterion),从假设空间中选取一个最优的 模型,使它对已知训练数据及未知测试数据(test data)在给定的评价准则下有最 优的预测;最优模型的选取由算法实现述监督学习中的统计。
2022-10-21 10:17:29
307
原创 面向对象详解(python)
2.执行__init__方法,默认会将创建的那块区域的内存地址当成self参数传递进去。对象,基于类实例化出来"一块内存",默认里面没有数据,然后经过__init__方法,可以在该类(内存中)初始化一些数据。实例变量只能通过对象调用,类变量既可以通过对象调用也可以通过类调用。如果用到对象的参数用绑定方法,如果没有参数用静态方法,用到类了用类方法。定义类,定义方法,创建一个对象,通过对象调用方法。不仅可以执行自己的方法还可以执行基类的方法。方法:绑定方法,类方法,静态方法。绑定方法,类方法,静态方法。
2022-10-18 20:03:12
280
原创 费马小定理,快速幂求解,欧几里得算法
费马小定理+快速幂求解+ 欧几里得算法求逆元或扩展欧几里得求逆元1.费马小定理若存在整数 a , p 且gcd(a,p)=1,即二者互为质数,则有a^(p-1)≡ 1(mod p)。(这里的 ≡
2022-07-30 22:39:50
719
原创 DFS之剪枝
数独是一种传统益智游戏,你需要把一个9×9的数独补充完整,使得图中每行、每列、每个3×3的九宫格内数字1∼9均恰好出现一次。每租用一辆缆车,翰翰和达达就要付1美元,所以他们想知道,最少需要付多少美元才能把这N只小猫都运送下山?第2..N+1行每行一个整数,其中第i+1行的整数表示第i只小猫的重量Ci。经历了千辛万苦,小猫们终于爬上了山顶,但是疲倦的它们再也不想徒步走下山了(呜咕>_...
2022-07-30 21:38:21
135
原创 如何删除双系统(超级详细,手把手教学)
查询自己的BIOS模式UEFI系统类型基于x64的电脑。需要将其在磁盘中的分区和引导项一并删除,我们需要下载DiskGenius软件。删除ubuntu系统分区,合并空闲分区,并删除开机引导项。在windows系统中的开始菜单栏输入cmd命令。基于X64版本选择64位版本。输入命令msinfo32。...
2022-07-26 19:41:35
5120
原创 最小步数模型
可以用颜色的序列来表示一种魔板状态,规定从魔板的左上角开始,沿顺时针方向依次取出整数,构成一个颜色序列。对于上图的魔板状态,我们用序列(1,2,3,4,5,6,7,8)来表示,这是基本状态。你要编程计算用最少的基本操作完成基本状态到特殊状态的转换,输出基本操作序列。如果操作序列的长度大于0,则在第二行输出字典序最小的操作序列。现在,给你一个初始网格,请你通过最少的移动次数,得到正确排列。输入仅一行,包括8个整数,用空格分开,表示目标状态。输出文件的第一行包括一个整数,表示最短操作序列的长度。...
2022-07-19 20:08:47
178
原创 BFS最短路模型
算法:对于边权值是1的最短路径问题,采用BFSAC代码:对于常见其他路径:4方向偏移量:int dx[4] = {-1, 0, 1, 0}, dy[4] = {0, 1, 0, -1};8方向偏移量:int dx[8] = {-1, -1, -1, 0, 1, 1, 1, 0}; int dy[8] = {-1, 0, 1, 1, 1, 0, -1, -1};8方向日字形偏移量:int dx[8] = {-2, -1, 1, 2, 2, 1, -1, -
2022-06-03 17:43:18
207
原创 Circular Local MiniMax
Circular Local MiniMax题意:给定n个数字,a1---an,进行重排列b1---bn。使得bi−1<bi>bi+1 bi−1>bi<bi+1两个满足一个。思路:很明显,在满足语句条件的排列中,如果bi是局部最小值,则bi-1,bi+1是局部最大值,反之亦然。局部最小值和局部最大值将交替出现。那么很容易看出奇数n不可能存在这样的安排。现在让我们考虑偶数 n=2m 的情况。对数组 a进行排序,使得 a1≤a2≤……≤a2m。让我们证明,如果
2022-05-27 12:03:56
309
原创 并查集经典题目
题目一:How Many Answers Are Wrong#include <iostream>#include <cstring>#include <algorithm>using namespace std;const int N = 200005;int p[N],d[N]; //p为集合,d为边权值int m,n; //m个数字,n次操作int find(int x){ if(x!=p[x]) {
2022-03-19 18:14:29
294
原创 第一周训练题
A-连续数的和思路:公差为1的等差序列求和等于n即1-n到n求和等于nB-打牌思路:对于先手者,同一出牌顺序得分最少为后手者的最优解所以枚举出牌顺序,相同出牌顺序取最小值,不同出牌顺序取最大值。C-Do Not Be Distracted!思路:枚举子串中是否有相同序列。D-地毯思路:二维的差分与前缀和E-纪念品分组思路:为了结合更多组且不超过上限,在条件允许下要最大与最小结合成一组F-Flappy...
2022-02-05 21:32:59
405
3
原创 C++常用容器和算法函数总结
一.vector1.a.push_back(x) //最后加一个元素2.a.pop_back() // 删除最后一个元素3.a.size() //长度4.a.clear() //清空5.a.insert(it,x) //往迭代器it处插入x6.a.begin() //首部迭代器7.a.end() //尾部迭代器8.a.erase(it) //删除it迭代器处元素9.a.erase(first,last) //删除[first,last)内的元素,注意左闭右开10.a.
2022-01-08 16:43:35
583
转载 数据范围推测算法以及复杂度
引言:对于一般的算法比赛中ac题目的限制为1秒。在此情况下,C++的代码操作次数控制在10的7次方~10的八次方。下面给出对于不同数据范围N对应的代码时间复杂度和算法该怎么选择1.n <=30, 指数级别, dfs+剪枝,状态压缩dp2.n <=100,O(n^3),floyd,dp,高斯消元3.n <=1000,O(n^2),O(n^2logn),dp,二分,朴素版Dijkstra、朴素版Prim、Bellman-Ford4.n <=10000,O...
2022-01-03 19:48:49
244
原创 哈希表详解---深入浅出
哈希表的产生就是为了查找而诞生的,是查找的时间极大的减少。一.朴素算法首先我们先来讲一下朴素查找,比如查找值key为3,我们就要通过遍历整个数组来寻找数组是否有我们的Key,假设一共有N个元素,那么它的时间复杂度为O(n)。如果遍历到了Key值则返回1,如果没有查找到则返回0.以上就是朴素算法的查找思路。二.哈希算法1.Hash table的定义哈希表就是根据Key关键值,作为自变量通过H(key)哈希函数对应到数组地址,这个数组就叫做散列表(Hash table).
2021-12-21 00:23:44
851
原创 二叉排序树C语言实现(超级详细代码)
今天来给大家讲解一下二叉排序树C语言代码实现typedef int ElemType; // 自定义数据元素为整数。// 二叉树的数据结构。typedef struct BSTNode{ ElemType data; // 存放结点的数据元素。 struct BSTNode* lchild; // 指向左子结点地址的指针。 struct BSTNode* rchild; // 指向右子结点地址的指针。..
2021-12-12 11:46:50
7737
9
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人