自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

行行出bug的博客

128warnings,1024errors !

  • 博客(9)
  • 收藏
  • 关注

原创 循环队列实现

顺序存储typedef 队列元素类型 ElemTp;typedef struct { ElemTp *elem; int size; //队列容量 int head; //队头指针 int tail; //队尾指针}SqQueue;int createQueue(Queue &q, int n) //建容量为n的队列{ if(n<=0) return 0; q.size=n; q.head=-1; q.tail=-1; q.elem=new ElemT

2021-08-15 11:08:02 136

转载 vector用法

来源:C++ vector的用法(整理)vector 是向量类型,它可以容纳许多类型的数据,如若干个整数,所以称其为容器。vector 是C++ STL的一个重要成员,使用它时需要包含头文件:#include<vector>;一、vector 的初始化:可以有五种方式,举例说明如下: (1)vector<int> a(10); //定义了10个整型元素的向量(尖括号中为元素类型名,它可以是任何合法的数据类型),但没有给出初值,其值是不确定的。 (2)vecto

2021-07-31 21:40:19 124

原创 printf格式化输出函数使用大全

printf("格式化字符串", 表达式1, 表达式2, ...);转换说明符含义d,i插入值类型为有符号整型,转换为十进制形式o,u,x,X插入值类型为无符号整型,转换为八机制、十进制和十六进制形式。x表示以小写字母a-f显示16进制数,X表示以A-F显示十六进制数。f插入值类型为double,转换为十进制形式,小数点放置于正确位置。默认小数点后显示6个数字。e,E插入值类型为double,转换为科学计数法标识。默认小数点后保留6位。选择e,将e放

2021-07-27 17:41:46 124

原创 位运算判断数独是否有效

来源:力扣请你判断一个 9x9 的数独是否有效。只需要 根据以下规则 ,验证已经填入的数字是否有效即可。数字 1-9 在每一行只能出现一次。数字 1-9 在每一列只能出现一次。数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。(请参考示例图)数独部分空格内已填入了数字,空白格用 ‘.’ 表示。注意:一个有效的数独(部分已被填充)不一定是可解的。只需要根据以上规则,验证已经填入的数字是否有效即可。权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。示例 1

2021-07-27 17:38:53 96

原创 四种并查集

整理自:【Leetcode】「图」的基本知识——并查集并查集主要用于解决一些元素分组的问题。它管理一系列不相交的集合,并支持两种操作:合并(Union):把两个不相交的集合合并为一个集合。查询(Find):查询两个元素是否在同一个集合中。Quick Find 的「并查集」上图中root数组的索引是图的顶点序号,存储对应顶点的父节点序号通过find()函数查询某个节点的根节点时,需要在root数组递归查询直到元素和索引相等时才算找到根节点。时间复杂度最坏可以达到O(n)。roo

2021-07-27 16:27:55 279

转载 利用二维向量的叉乘判断凹凸多边形

平面上三个点:p1(x1,y1),p2(x2,y2),p3(x3,y3)s(p1,p2,p3)=(x1-x3)(y2-y3)-(x2-x3)(y1-y3)=x1y2+x2y3+x3y1-x2y1-x3y2-x1y3两个二维向量叉乘结果:x1y2-x2y1三个二维向量叉乘结果:x1y2+x2y3+x3y1-x2y1-x3y2-x1y3如果s>0 则说明 这连接这3个点时是按照逆时针的顺序,如果是s<0则说明连接这3个点是按照顺时针的顺序这样的话按顺序的遍历每三个点,如果有小于0的说

2021-07-26 15:05:43 635

原创 KMP算法

不用回溯指针的关键:1.模式串移动2.最大相同前后缀匹配到指针位置时模式串与主串不匹配。按照朴素的串匹配思想,应当将指针回溯到主串当前匹配其实位置的下一个位置上再重新与模式串其实位置开始匹配。KMP算法则是考虑当前模式串已经匹配的前面部分有什么特点:不难发现,已经匹配部分ABBAB的存在前缀AB和与之相同的一个后缀AB。于是,显然不用采用朴素的串匹配思想将指针回溯到主串其实匹配位置的下一个位置(即B),模式串也不用从头重新匹配。将模式串前缀“拖动”到后缀位置上(前缀与后缀相同),可以发现模

2021-06-21 19:11:27 122

原创 字符串,字符数组的初始化

先上代码:#include<stdio.h>int main(){ char* s1 = (char *)"aaaaa"; // char * s2={'b','b','b','b','b'};//[Error] scalar object 's2' requires one element in initializer char s3[] = "ccccc"; // char s4[5]="ddddd";//[Error] initializer-string for arra

2021-06-21 15:56:59 4094 1

原创 C语言中字符串相关操作注意事项

C语言中字符串相关操作注意事项1.字符串赋值字符数组可以在定义时整体赋值,不能在赋值语句中整体赋值常见有一下三种方式:1)定义的时候直接用字符串赋值 char a[10]="hello";上例中a[6]=’\0’,即编译器自动为字符串末尾加上了结束符”\0“。2)对数组中字符逐个赋值 char a[10]={'h','e','l','l','o'};上例中同样有a[6]=’\0’。3)利用strcpy char a[10]; strcpy(a, "hello");2.

2021-05-21 21:06:20 551

空空如也

空空如也

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

TA关注的人

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