自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(217)
  • 资源 (1)
  • 问答 (96)
  • 收藏
  • 关注

原创 算法模板持续更新

基础算法 排序 二分 高精度 前缀和与差分 双指针算法 位运算 离散化 区间合并数据结构 链表与邻接表:树与图的存储 栈与队列:单调队列、单调栈 kmp Trie 并查集 堆 Hash表搜索与图论 DFS与BFS 树与图的遍历:拓扑排序 最短路 最小生成树 二分图:染色法、匈牙利算法数学知识 质数 约数 欧拉函数 快速幂

2022-07-09 20:43:08 602 4

原创 LeetCode+ 56 - 60

双指针算法、位运算、离散化、区间合并_小雪菜本菜的博客-CSDN博客给我们一堆没有任何交集的区间 把区间分为前面完全每交集的一部分,分成后面完全没交集的一部分,中间有交集的一部分中间有交集的一部分合并之后一定会变成一个区间从第k个区间开始连续一段存在与指定区间有相交的关系,需要将有相交关系的区间与指定区间进行合并,将合并后的区间加入到 res 中,当枚举的区间的 左端点 ......

2024-01-11 18:47:44 346

原创 C语言 --- 函数

普通调用: 函数名(实参) ,保持形参和实参的类型和数目一致即可。printf和scanf返回值。自己调用自身(递归调用)

2024-01-11 18:45:14 567

原创 MySQL --- 子查询 - 表子查询

在最前加上部门编号,我们要做的其实是把第一个表和第二个表进行结合,用部门编号作为关联字段,我们只需要把第二个查询出来的表当作临时表,对于子查询临时表都需要取一个别名,否则的话是无法操作的,最后加上条件,以部门编号进行等值连接。查询出所有薪资高于公司平均薪资的员工编号、姓名、基本工资、职位、雇佣日期、所在部门名称、部门位置、上级领导姓名、工资等级、部门人数、平均工资、平均服务年限。查询出所有在'SALES'部门工作的员工编号、姓名、基本工资、奖金、职位、雇佣日期、部门的最高和最低工资。

2022-10-07 12:19:31 2546 1

原创 习题 --- BFS

给定一个3×3的网格,里面有1到8这八个数字和一个'x',这个'x'其实是一个空格,里面没有数字,每次可以进行的操作是把一个现有的数字移到空格里面去,例如下面这张图,空格的位置如图所示,我们可以做的就是把空格周围的四个格子里面的数移到空格里面去,移动一次就算一次操作,第一种情况就是把1移下来,DFS第一次搜索到的节点不一定是沿着最短路搜索过去的,BFS第一次搜索到的节点一定是沿着最短路过去的。......

2022-07-27 10:17:51 425

原创 习题 --- 快排、归并、浮点数二分

qi之前的数都是小于等于qj,qi后面的数都大于qj,此时从i开始到最后,区间里面所有的数就是全部比qj大的数了,那么就可以求出来sj了,sj就等于从i开始到上面区间最后一个数的个数,上面区间的左端点是l,右端点是mid,因此sj=mid-l+1,求黄色的数对的个数其实就是归并的过程,当我们要把qj输出出来的时候,就在答案里面加上mid-l+1就可以了。首先,当我们整个序列是倒序的时候,逆序对的数量是最多的,n、n-1、n-2、...............

2022-07-26 21:43:17 525

原创 MySQL --- 子查询 - 列子查询(多行子查询)

NOTIN的作用和IN恰好相反,NOTIN用来判断表达式的值是否不存在于给出的列表中;报错,子查询返回最多只有一行,但是需求要实现多行,需要把等于5000的、等于800的、等于950的、等于1300的薪资输出。ANY关键字是一个MySQL运算符,如果子查询条件中ANY的比较结果为TRUE,则它会返回。ALL关键字是一个MySQL运算符,如果子查询条件中ALL的比较结果为TRUE,则它会。使用IN操作符,当工资在这个集合里面的时候,把对应的员工进行输出。每个员工的薪资与每个管理的薪资比较。...

2022-07-25 08:51:12 3580

原创 MySQL --- 子查询 - 标量子查询

查询出与ALLEN从事同一工作,并且基本工资高于员工编号为7521的全部员工信息。可以发现查询结果中包含ALLEN,需要把ALLEN从查询结果中剔除。需要用到一些运算符大于>、小于<、等于=、不等于<>、!查询与员工编号为7566从事同一工作且领导相同的全部员工信息。查询与SCOTT从事同一工作且工资相同的员工信息。查询出基本工资比ALLEN低的全部员工信息。查询基本工资高于公司平均工资的全部员工信息。子查询返回的是单行多列的数据,就是一条记录。子查询返回的是单行单列的数据,就是一个值。...

2022-07-23 21:58:39 2720

原创 MySQL --- 子查询 - 子查询概念、规范、分类

在特定情况下,一个查询语句的条件需要另一个查询语句来获取,内层查询(innerquery)语句的查询结果,可以为外层查询(outerquery)语句提供查询条件。子查询可以返回一个标量(就一个值)、一个行、一个列或一个表,这些子查询分别称之为标量、行、列和表子查询。子查询指一个查询语句嵌套在另一个查询语句内部的查询,这个特性从MySQL4.1开始引入。子句中此时子查询返回的结果图一般都是多行多列,可以按照一张数据表(临时表)的形式操作。内层查询即子查询,外层查询即主查询,只是叫法不同而已。......

2022-07-22 14:22:22 621

转载 图解二分图 --- 染色法、匈牙利算法

4、至少有两个邻接点染色相同,则染色失败,(邻接点染相同颜色的话,说明这两个点在同一集合,而二分图是不能有邻接点在同一集合的)不是二分图,否则就是二分图。1、我们这里将1和2代表两种颜色(也就是两个集合,染1的在一个集合,染2的在另一个集合),初始时所有点颜色都为0,代表未染色。二分图所有的点可以分为两个集合V1、V2,图中任意一条边的两个顶点分别在不同的集合,即任意一个集合的内部不能有边。二分图就是可以把所有点划分到两边集合中去,使得所有的边在两个集合外且在两个集合之间,集合内部没有边的图。......

2022-07-20 15:51:37 514

转载 图解最小生成树 --- 克鲁斯卡尔算法(Kruskal)与普里姆算法(Prim)

所以选择B和F相连。第八步B-A-H-G-F-C-I-D组成集合M,剩下的点到这个集合的距离的最小值是9,也就是E到M的距离,也就是E到D的距离。第七步B-A-H-G-F-C-I组成集合M,剩下的点到这个集合的距离的最小值是7,也就是D到M的距离,也就是D到C的距离。第六步B-A-H-G-F-C组成集合M,剩下的点到这个集合的距离的最小值是2,也就是I到M的距离,也就是I到C的距离。第五步B-A-H-G-F组成集合M,剩下的点到这个集合的距离的最小值是4,也就是C到M的距离,也就是C到F的距离。......

2022-07-20 11:12:00 3121 1

原创 MySQL --- 多表查询 - 七种JOINS实现、集合运算、多表查询练习

七种JOINS实现集合运算MySQL支持并集运算。并集即两个集合所有部分UNIONALL会删除重复行相同的行在结果中只出现一次UNIONALLUNION不会会删除重复行相同的行在结果中可能出现多次要求(1)输入的查询不能包含ORDERBY字句,可以为整个集合运算结果选择性地增加一个ORDERBY字句(2)两个查询必须包含相同的列数(3)相应列必须具有兼容的数据类型。兼容个的数据类型优先级较低的数据类型必须能隐式地转换为较高级的数据类型。..................

2022-07-20 09:44:22 691

原创 搜索与图论 --- 最短路 - SPFA 算法、Floyd 算法

第一步,只要队列不空,队列里面还有节点变小的话,先从队列里面取出队头,然后把队头删掉,第二步遍历t的所有出边,如果t变小的话,所有以t为起点的边的终点都有可能变小,更新t的所有出边,例如t→b,距离是w,第三步,如果更新成功的话,把待更新的点b加入队列,加入之前需要判断一下,如果队列之前已经有b的话,b就不用再重复加入了。基本思路就是更新过谁,再拿谁来更新别人,一个点如果没有被更新过的话,那么它再去更新别人一定是没有效果的,只有我变小了,我后面的人才会变小。...

2022-07-19 11:41:13 1364

原创 MySQL --- 多表查询 - 笛卡尔积和正确的多表查询、等值连接和不等值连接、内连接和外连接

前面我们使用的查询,只是对单表进行查询,但是在具体的应用中,经常需要实现在一个查询语句中显示多张数据表的数据,因为基本上数据都是分表的,需要根据当前表在其他表中查询数据,把多张表结合起来进行查询数据的方式就是多表联合查询。虽然我们确实可以找到某一位员工的信息和所在的部门信息,但是我们可以发现这两个查询语句是独立的,我们并不能直观地看到所有的数据,如果要直观地看到所有的数据,这就需要使用到多表查询了。在表关系的笛卡尔积数据记录中,保留表关系中所有匹配的数据记录,舍弃不匹配的数据记录。.............

2022-07-18 14:49:23 1888

原创 搜索与图论 --- 最短路 - 朴素版 DijKstra 算法、堆优化版 DijKstra 算法、Bellman-Ford 算法

最短路涉及了很多算法,不同的算法对应了不同的情景常见的最短路问题可以分为两大类,单源最短路问题和多源汇最短路问题n 表示图里面点的数量,m 表示边的数量贪心算法、DijKstra算法分支定界思想单源最短路问题:一般是求一个点到其他所有点的最短距离,常见的题型就是求 1 号点到 n 号点的最短路,只要求出来 1 号点到所有点的最短路之后,显然 1 号点到 n 号点的最短路也就求出来了多源汇最短路问题:源点就是起点,汇点就是终点,也就是说可能不止一个起点,可能会有很多个询问,每个询问问我们任选两个点,从其中一个

2022-07-17 13:21:41 915

原创 MySQL --- 多表查询 - 表与表之间的关系

左边是学生表,学生表对应一些学生的信息,例如学生的id,课程表也有一个课程id,课程表和学生此时还没有建立关系,当我们的学生选择了课程之后,如果之间在学生的字段后面加上课程id,由于学生要选择很多门课程,需要很多列用于存储课程的信息,不方便存储,引入一个中间表,只需要两个字段即可,第一列是学生id,也就是黛绮丝,既选择了java课程也选择了php课程,通过id在学生课程关系表里面找到学生选择的课程,然后在课程表里面找到具体的课程信息。一对多(多对一、一个对应多个的关系,树状模型).........

2022-07-16 17:00:10 1492

原创 LeetCode+ 86 - 90 链表、双指针|字符串、动态规划、区间 dp|数组、双指针、排序|数学|回溯、剪枝

链表的快排的其中一部分,将所有小于 x 的节点排在左边,把所有大于等于 x 的节点排在右边,左边两边的节点相对顺序不要发生变化,一开始 2 在 5 前面,排序后 2 还是在 5 前面原来链表是 1、4、3、2、5、2,分界点 x = 3,需要把所有小于 3 的放到左边,把所有大于 3 的放在右边,由于不知道左右两边有多少个元素,先看两个新链表存储左边是谁,右边是谁,然后再把两个链表拼接,把左边的最后一共点指向开始的第一个点快排、归并、浮点数二分、高精度加、减法扰乱字符串 给我们一个字符串 s1

2022-07-16 14:22:40 226

原创 数据结构 --- c语言实现双向循环链表

只有一个节点的时候,把头指针和尾指针都指向自己,形成了一个环形,通常把这种链表叫作双向循环链表多个节点形成环形双向循环链表主要分为三部分前项指针后项指针数据域第一个节点的前项指针指向最后一个节点,最后一个节点的后项指针指向第一个节点创建节点 把用户的数据变成一个结构体变量创建链表 描述链表最初的状态,创建一个不带数据的链表,链表就是结构体变量和结构体变量连接在一起需要一个表头,由于是环形,如果没有表头不方便表示,创建一个表头起区分作用。创建无头链表也可以,但是也需要有一个节点表示这

2022-07-12 14:26:56 1413

原创 MySQL --- 常用函数 - 数值函数、时间日期函数、条件判断函数、其他函数

通过数据库的函数,生成一个六位数字的随机验证码 语法 1语法 2

2022-07-11 00:22:22 529

原创 数据结构 --- c语言实现双向链表

双向链表主要分为三部分前项指针后项指针数据域一般情况下,创建单一个体,前项指针和后项指针都赋值为空一般采用记录头节点和记录尾节点,再封装的方式写双向链表再定义一个结构体(链表) 通过记录头节点和尾节点的方式去描述链表创建节点 把用户的数据变成一个结构体变量创建链表 描述链表最初的状态头插法①新节点的后项指针指向原来链表的头节点②原来链表的头节点的前项指针指向新节点③把原来的头节点移到新节点的位置打印链表 可以通过前项指针去做打印,也可以通过后项

2022-07-07 11:59:35 2528 1

原创 MySQL --- 常用函数 - 字符串函数

MySQL 函数会对传递进来的参数进行处理,并返回一个处理结果,也就是返回一个值。MySQL 包含了大量并且丰富的函数,咱们讲解几十个常用的,剩下的比较罕见的函数我们可以到「MySQL 参考手册」查询。RPAD(列|字符串,长度,填充字符)LPAD(列|字符串,长度,填充字符)如果用 emp 表可以发现测试数据输出了很多遍,因为 emp 表中有很多条数据,每一条数据都要执行一下使用MySQL中的虚拟表,其中只有一行数据,正好可以用来进行测试函数,也可以不写 将字符串每个字符转为大写可以发现如果大小写相结合,

2022-07-06 08:57:37 7755

原创 MySQL --- 数据库查询 - 排序查询、分页查询

在实际应用中经常需要对查询结果进行排序,比如,在网上购物时,可以将商品按照价格、数量进行排序;在医院的挂号系统中,可以按照挂号的先后顺序进行排序等。语法语法说明排序字段名:表示需要排序的字段名称,如果有多个字段用逗号隔开。排序规则:ASC|DESC:表示字段按升序排序;表示字段按降序排序。其中 [ ] 为默认值,默认按升序排列。特点ORDER BY子句一般放到查询语句的最后面,LIMIT字句除外。当排序的字段中存在空值 NULL 时,ORDER BY 会将该空值作为最小值来对待。ORDER BY 指定

2022-07-05 08:17:54 2000

原创 MySQL --- 数据库查询 - 聚合函数的使用、聚合查询、分组查询

column 表示字段名,对某一字段进行某些操作其中 COUNT 函数可用于任何数据类型 (因为它只是计数),而 SUM 、AVG 函数都只能对数值类型做计算,MAX 和 MIN 可用于数值、字符串或是日期时间数据类型。1.统计该企业员工数量 注意 COUNT() 不会把空值计算在内2.统计该企业员工的平均工资3.查询该企业员工的最高工资4.查询该企业员工的最低工资5.计算所有销售的工资之和需要声明一点的是,虽然说统计函数一般是搭配分组查询,但是单独使用的情况一定是有的。

2022-07-04 13:58:06 1982

原创 LeetCode+ 81 - 85 数组、二分查找|链表、双指针|链表|单调栈|单调栈

算法标签:数组、二分查找 参考第 33 题LeetCode+ 31 - 35 二分专题_小雪菜本菜的博客-CSDN博客(线性扫描) O(n)参考题解LeetCode 81 Search in Rotated Sorted Array II - AcWing这道题类似于第 33 题,不同点在于这道题里的数组可能包含相同元素。目前能想到的二分做法的最坏时间复杂度都是 O(n),所以索性就拿线性扫描做了^^时间复杂度分析:整个数组只扫描一遍,所以时间复杂度是 O(n)与第 33 题的区别是里面可能有重复元

2022-07-04 06:58:50 173 1

原创 MySQL --- 数据库查询 - 条件查询

语法运算符表BETWEEN 后面是最小值,AND 后面是最大值,表示的是一个区间,是包含最大值和最小值的IN(...) 如果我们需要的值在括号里面就表示成立LIKE 模糊匹配,需要用到通配符,一个是 _ 表示匹配单个字符,另一个是 % 表示匹配任意个字符IS[NOT] NULL 判断某一个字段是不是空1.查询工资等于3000的员工2.查询工资小于1000的员工3.查询工资小于等于1000的员工4.查询没有奖金的员工5.查询有奖金的员工6.查询工资在1200到1800之间

2022-07-02 20:16:29 3155

原创 MySQL --- 数据库查询 - 基本查询

1. 查询多个字段以下为在MySQL数据库中查询数据通用的 SELECT 语法: 查询语句中可以使用一个或者多个表,表之间使用逗号(,)分割,并使用WHERE语句来设定查询条件。SELECT 命令可以读取一条或者多条记录。你可以使用星号(*)来代替其他字段,SELECT语句会返回表的所有字段数据2.设置别名3.去除重复记录4.四则运算查询 查看文件编码怎么在 Navicat 里面导入 sql 数据呢?开始查询操作1.查询指定字段 ename,job,sal的数据2.查询所有字段

2022-07-02 18:08:45 4397

原创 MySQL --- 数据库的基本操作

要学习SQL查询语句,首先必须解决一个问题,数据问题。为了方便大家学习,在视频目录中提供了一个test.sql文件。登录MySQL,输入导入sql文件,sql文件实际上是一个脚本文件,里面有多行SQL语句,通过source命令可以批量执行。执行完毕之后,使用查看所有数据库,发现多了一个名为test的数据库。 使用查看test数据库下所有的数据表,发现有四个表。test数据库表以后讲解SQL语句的时候,主要使用的是test数据库下的四张表,所以首先就必须对这些表的作用以及列的数据类型做一个基本的了解。部门表:

2022-07-02 15:49:40 313

原创 MySQL安装与配置

MySQL 的历史最早可以追溯到1979年,Monty Widenius用BASIC设计了一个报表工具,过了不久,又将此工具使用C语言重写,移植到UNIX平台,当时只是一个底层的面向报表的存储引擎。1985年,三个瑞典人 David Axmark、Allan Larsson和 Michael Widenius 成立了一家公司,这就是 MySQLAB 的前身,这个公司最初并不是为了开发数据库产品,而是在实现想法的过程中需要一个数据库并希望能够使用开源的产品。但在当时并没有一个合适的选择。因此自己设计了一个利用

2022-07-02 12:06:36 622

原创 MySQL --- 数据库的基本概念

数据是数据库中存储的基本对象,出了基本的数字之外、像图书的名称、价格、作者等都可以称为数据。列如:在日常生活之中,可以这样描述一本书的信息,《C Primer Plus》是人民邮电出版社出版的图书,作者是普拉塔(Prata S.),定价是89.00,出版日期是2005年2月1日,这样的信息在计算机中就可以使用下面的方式来描述:(C Primer Plus,人民邮电出版社,普拉塔(Prata S.),89.00,2005-2-1)即,将信息按照“(图书名称,出版社,作者,价格,出版日期)”的方式组织在一起,这

2022-07-02 09:50:43 171

原创 LeetCode+ 76 - 80 暴搜专题

算法标签:哈希表、字符串、滑动窗口算法标签:回溯、组合类型枚举递归实现组合型枚举、带分数_小雪菜本菜的博客-CSDN博客实现组合类型枚举,枚举一下从 n 个数里面选 k 个数组合类型枚举最需要考虑的就是判重,有 3 个数 1、2、3,从中选 2 个数,选 1、2 和 2、1 其实是同一种方案,我们需要考虑的是如何把重复的方案去掉,去掉重复方案顺序是不同的之所以有重复方案是因为我们在选择的时候顺序是不同的,我们只需要人为规定一下只能按照某种顺序选,这样的话方案就是唯一的规定所有方案从前往后选,不能出现先选了

2022-07-01 19:22:44 191

原创 LeetCode+ 71 - 75

给我们一个路径,要求把文件路径化简,给定的路径一定是合法的 Linux 路径,一个合法的 Linux 路径一般从 / 开始,/ 表示根目录,有很多的子目录 home、y,"." 表示在当前目录(一个 "." 没有任何变化), ".." 表示返回上一级目录如果一个路径是 / home / a / .. / b,根目录 → home → a → b,化简其实就是把所有的 "." 和 ".." 去掉,当前案例去掉就是 / home / b注意特殊情况:斜杠 " / " 可能会有连续多个,需要把连续多个斜

2022-06-30 19:20:19 304

原创 c语言 --- 分支结构

if (表达式) { //满足条件执行} 尽量带上这个{ },不带只管理一条语句if_else 语句//复合语句if (表达式){ //条件成立执行这里 printf("1");}else{ //条件不成立执行这里 printf("1");}如果输入的数字是奇数就打印奇数,如果输入的数字是偶数就打印偶数if_else if _el

2022-06-28 23:39:30 531

原创 LeetCode+ 66 - 70 高精度、二分专题

给我们一个整数,这个整数是用一个数组来表示的,在这个整数的基础上加 1,加 1 之后还是用数组来表示,数组的最高位放到第 0 个位置,次高位放到第 1 个位置,假设这个数组是没有前导 0,其实就是给了一个很长的整数,模拟加法的过程由于最高位可能会进位,所以需要先把数组翻转,要让个位在第 0 个位置,十位在第 1 个位置,从个位开始做,每次计算当前这一位的值是多少,看一下有没有进位,如果有进位就进一位每一次当前位置上的数应该怎么计算呢?个位上应该是原来位置上的数加上 1,再加上进位,加上 1 可以看成是前面进

2022-06-28 00:15:30 223 2

原创 LeetCode+ 51 - 55 回溯、动态规划专题

给出一个国际象棋的棋盘,有 n 行、n 列 要在这个棋盘里面摆放 n 个皇后,国际象棋里面的皇后可以横着走,竖着走,而且可以斜着走,要在这个棋盘上摆放 n 个皇后,要求这 n 个皇后之间是不能被攻击到的,要求不能有两个皇后子在同一行、同一列、或者在同一条对角线上,要求输出所有方案动态回溯、N皇后问题_小雪菜本菜的博客-CSDN博客直接搜索就可以了,搜索之前观察一些性质:由于所有皇后之间是不能相互攻击到的,所以每一行最大只能放一个皇后,由于要放 n 个皇后,一共有 n 行,所以每行恰好放一个皇后,接下来想一

2022-06-27 01:39:05 221

原创 c语言 --- 运算符和表达式

左值和右值以及操作数的概念a=1 a:左值 1:右值error C2166:左值指定 const 对象 左值一般是变量右值:没有什么太多要求操作数:=需要两个数字运算符,操作数2单目,双目, 三目优先级:计算表达式的顺序(先算*/ 再算+ -)结合性:a=1; 正确应该是把1赋值给a逗号→赋值→逻辑→条件→算术→位→括号基本运算符 赋值运算符 算术运算符 复合赋值运算符条件运算符条件表达式只有两个结果: 0(表示不成立) 或者 1(成立)在计算机中非零值表示成立

2022-06-26 09:49:32 413 1

原创 Easyx-----c语言实现2048

tool.hpp 源.cpp

2022-06-25 21:00:24 1046 3

原创 LeetCode+ 46 - 50

算法标签:数组、回溯给我们一个没有重复数字的数列让我们求它的全排列递归暴搜的实现按照什么顺序来搜索,排列问题有很多种搜索的顺序①我们可以从前往后枚举每一个位置填哪个数,可以先枚举第一个位置填哪个数,再枚举第二个位置填哪个数,以此类推 √②依次枚举每个数放到哪个位置上,第一个数可以放在第 0 个位置上,可以放到第一个位置上也可以放到第二个位置上;第二个数可以放到第 0 个位置上,可以放到第一个位置上也可以放到第二个位置上对于排列问题来说,以上两种搜索顺序都是可以的接下来画一下第一种方案的递归搜索树,每一个叶子

2022-06-22 00:00:24 1222 1

原创 LeetCode+ 41 - 45 计数排序|单调栈|字符串、模拟|动态规划|双指针、贪心、动态规划

算法标签:数组、哈希表给出一个无序数组,要在里面找到最小的没有出现过的正整数,可以先排序,排序之后从前往后扫描,扫描到第一个没有出现过的整数就可以了,排序的时间复杂度是 O( nlogn )c++ 的指令只能执行 10^8 次先把所有的数放到哈希表里面,放完之后,再从小到大枚举每一个正整数,知道找到第一个没有出现过的正整数为止,这个就是答案首先,我们先把所有的数放到哈希表里面,这一步的时间复杂度为 O( n ),第二步枚举最多从 1 开始枚举到 n + 1,枚举到n + 1 的时候,表示已经枚举了 n +

2022-06-21 19:39:49 176 1

原创 LeetCode+ 6 - 10 字符串、找规律|数学|字符串|数学|动态规划

算法标签:字符串 给出一个字符串,需要先把它按 Z 字行写一遍,然后再按行读出来行数是 6 就表示第一列有 6 个数,这里可以的都是行数大于 1 的情况,如果行数是 1,需要特判第一行是以 0 开头的,公差是 2n - 2 的等差数列 整数反转算法标签:数学 给出一个 32 位的有符号整数 ,需要将这个整数的每一位上的数字进行反转后输出,如果翻转之后这个数溢出的话就返回 0法一:可以转换成字符串,翻转,再转换成整数法二:把一个数的每一位扣出来,以正数为例把 "4321" 变成整数,先定义一个变

2022-06-19 12:04:01 402 2

原创 c++ 设计模式 --- 抽象工厂模式

抽象工厂模式是所有形态的工厂模式中最为抽象和最一般性的。抽象工厂模式可以向 客户端提供一个接口,使得客户端在不必指定产品的具体类型的情况下,能够创建多个产品族的产品对象。抽象工厂方法是针对与一个产品族,使得易于交换产品系列,只需改变具体的工厂就可以使用不同的产品配置。当一个族中的产品对象被设计成一起工作且一个应用只是用同一族的对象,例如设计系统生成不同风格的UI界面,按钮,边框等UI元素在一起使用,并且只能同属于一种风格,这很容易使用抽象工厂实现。1.提供一个抽象工厂类:声明一组创建一族产品的工厂方法2.提

2022-06-18 10:21:16 1162 1

皮卡丘移动素材中的bk.bmp

皮卡丘移动素材

2021-11-18

单调栈问题求解有些小问题

2022-05-10

生成不重复的随机数保存在二维数组

2022-02-22

这个输出是什么导致的

2021-11-13

怎么判断输入是否是数字。

2021-10-10

想要输出字符a应该使用哪行输出是21还是22为什么

2021-10-10

16行和17行的区别是什么能不能解释一下

2021-10-10

第七行输出和第8行输出有什么区别为什么

2021-10-10

为什么printf("%c","abc"[0]);输出a,

2021-10-10

为什么指针是整数,。

2021-10-06

输入50,输出所有3的倍数,和包含3的数用goto语句

2021-09-28

输入50,输出所有3的倍数,和包含3的数用goto语句或者while语句

2021-09-28

输入50,输出包含3的数怎么输出

2021-09-28

转换的时候为什么会省略一个1

2021-09-23

已知以float形式存储的(带小数的)重新转十进制转换为什么在前面补个1

2021-09-23

为什么printf方法不能输出整数88

2021-09-21

为什么fire报错,第20行不是有了吗下面的那个fire没有报错

2021-09-21

怎么输出else部分,这个是什么问题

2021-09-20

Student s1=new Student();这句是什么意思

2021-09-20

这段代码是什么意思能不能解释下

2021-09-20

int型转float和long转int的区别是什么

2021-09-19

float型怎么存储二进制数1011.101

2021-09-18

第一句代码有什么用,能不能解释一下

2021-09-18

溢出的时候比如char型的n是456,要不要考虑系统是大端系统还是小端系统的问题

2021-09-17

这个为什么找不到文件

2021-09-17

为什么java类名不能用空格比如hello world这样

2021-09-17

一个很大的十进制数比如566666666转为二进制数和一些小一点的数求二进制有什么区别

2021-09-17

为什么cd d:不能切到d盘

2021-09-16

java怎么用记事本编写helloworld

2021-09-16

返回值被忽略是什么原因

2021-09-14

这个是出现什么问题?adb的问题

2021-09-11

这个是什么问题adb问题

2021-09-11

这个已经初始化了为什么还是这样

2021-09-11

这个是什么问题?adb的问题

2021-09-10

为什么6,7行的地址是不同的

2021-09-09

这句是什么意思?能不能解释下

2021-09-08

画线部分没懂,能不能解释一下

2021-09-07

第一张图那两条语句执行的是什么?图二红色波浪线部分没懂

2021-09-06

为什么这样可以计算数组大小(用sizeof)

2021-09-04

什么弊端,有点没看懂

2021-09-04

这个kbhit为什么不行

2021-09-03

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

TA关注的人

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