自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 《MySQL数据库》day3 -- 约束条件(非空、唯一性、主键、外键)、事务的四大特性(隔离性)

约束对应的英语单词:constraint在创建表的时候,我们可以给表中的字段加上一些约束,来保证这个表中数据的完整性、有效性!!!约束的作用就是为了保证:表中的数据有效!!一个事务其实就是一个完整的业务逻辑。是一个最小的工作单元。不可再分。什么是一个完整的业务逻辑?假设转账,从A账户向B账户中转账10000.将A账户的钱减去10000(update语句)将B账户的钱加上10000(update语句)这就是一个完整的业务逻辑。以上的操作是一个最小的工作单元,要么同时成功,要么同时失败,不可再分。

2024-03-26 18:07:50 798

原创 《Django项目》day4 -- 部署nginx与对接acapp

【代码】《Django项目》day4 -- 部署nginx与对接acapp。

2024-03-26 16:45:55 355

原创 《Django项目》day1--配置docker、git、项目的创建

创建一个game文件夹,下面有很多文件,①admin.py:用来存储管理员页面(能够看到的数据库) ②model.py:用来定义各种数据库的表 ③tests.py:不用管,用不着 ④views.py:用来写视图、函数的 ⑤migration:系统自动生成,不用管 ⑥apps.py:只会用到一次,后面会说。我们所租的云服务器属于第二层,第一层是VMware下的终端,我们以后所管理的项目都应该在第三层。_ ,我们怎么管理呢?这时候,我们在网上上输入:自己的ip地址 + :8000 就可以登上自己的项目了,

2024-03-13 16:55:56 952

原创 《MySQL数据库》day2--连接查询、子查询、union、limit、DML语句

从一张表中单独查询,称为单表查询。emp表和dept表联合起来查询数据,从emp表中取员工名字,从dept表中取部门名字。这种跨表查询,多张表联合起来查询数据,被称为连接查询。selectfromwheregroup byhavingorder bylimit执行顺序?

2024-03-09 14:29:15 1032

原创 《Linux》day6--docker——docker镜像与容器

因为使用docker必须要有sudo权限,为了避免我们每次都要输入sudo,我们可以。去云平台控制台中修改安全组配置,放行端口20000。注意:5 和 6 是逆运算。

2024-03-04 21:05:33 676

原创 《MySQL数据库》day1--mysql常用命令、条件查询、单行多行处理函数、分组查询

win+r键输入cmd代开windows命令窗口,然后输入:mysql -uroot -p,然后输入密码即可登录上mysql数据库。// sal在前,起主导,只有sal相等的时候,才会考虑启用ename排序。// 2表示第二列。-》数据库当中是以表格的形式表示数据的。不看表中的数据,只看表的结构,有一个命令:-》desc 表名;查看mysql数据库的版本号:-》mysql> select version();查看当前使用的是哪个数据库?count(具体字段):表示统计该字段下所有不为NULL的元素的总数。

2024-03-03 23:18:02 740

原创 python基础语法(下)—— python中的元组、集合、字典、类与异常的处理

hero_count = 0 #类变量def __init__(self, name, level=10): #构造函数def __str__(self): #定义str函数def get_level(self): #获得该英雄的等级。

2024-01-21 14:15:54 924

原创 Python基础语法(中)—— python列表、字符串、函数

了解python中的列表、字符串、函数

2024-01-12 17:27:14 927

原创 深刻搞懂scanf与cin在读取时遇到空格的处理

在读取数据时,scanf与cin再处理空格时的差异

2024-01-11 15:49:25 750

原创 C语言深度剖析 -- 深度理解符号

C语言与gcc的答案还不太一样,++i是先自增在使用,gcc中先计算前面两个++i,也就是i先自增为2,然后第二个i再自增为3,i这时候在使用都是3,3 + 3 = 6,最后一个i在先自增,为4,在与前两个相加,也就是 3 + 3 + 4 = 10;我们都知道,有些软件会分为会员和非会员,而非会员的部分功能是无法使用的,那么在设计程序时,我们需要写两部分吗?符号就像我们写代码中的桥梁,没有符号,我们是不可以从桥的一端通向另一端的!,注释要做到:简单、一动,不存在二义性,简单的代码不需要加上注释;

2024-01-09 16:57:19 910

原创 Python基础语法(上)——基本语法、顺序语句、判断语句、循环语句(有C++基础快速掌握Python语言)

python第一章

2024-01-09 16:56:39 916

原创 C语言深度剖析 -- 32个关键字(下)

void a;像这样我们定义一个空类型a在vs中是编译不过去的,为什么编译不过去呢?我们来求一下 sizeof(void) 的大小是多少;我们看到在vs中一个void类型是不占用空间的,之前我们说定义变量首先开辟好多少个字节的空间,而void是0个字节,所以就不可以在内存中开辟空间,因此void是不可以定义变量的!!!在Linux中,void也是不可以定义变量的,但是在Linux中 sizeof(int)的大小是1,这是编译器的理解问题;我们只需要知道void不可以定义变量就可以了。

2023-02-10 20:57:25 861 1

原创 基础算法--背包问题(01背包问题、完全背包问题、多重背包问题、分组背包问题)

背包问题:给我们 i 件物品,每件物品都有体积 vi 和权重 wi ,给我们限制条件,让我们选择在背包的容量内,物品达到权重最大。

2023-01-22 16:15:55 1788

原创 C语言深度剖析 -- 32个关键字(上)

从头开始深度剖析了解C语言的关键字,包括auto、register、static、unsigned、signed、sizeof等等,希望大家一起加油!

2023-01-19 19:03:48 1025

原创 c++语法欠缺地方(持续更新)

自己在刷题过程中遇到c++知识点欠缺的地方

2022-12-31 16:28:06 943 1

原创 《前端》JavaScript--常用库API

该函数会在下次浏览器刷新页面之前执行一次,通常会用递归写法使其每秒执行60次func函数。调用时会传入一个参数,表示函数执行的时间戳,单位为毫秒。之前我们想要获取某个div需要使用 document.querySelector 函数来获取,学了 jQuery 之后,写法就变得尤为简单了。现在我们可以使用 $(selector).on(event, func) 来绑定事件。当存在多个相同类型的事件触发函数时,可以通过click.name来区分。delay毫秒后,执行函数func();

2022-12-01 17:17:37 834 1

原创 《前端》JavaScript总结

js最全总结

2022-11-29 13:23:07 754 1

原创 《前端》css总结(下)

flex 元素仅在默认宽度之和大于容器的时候才会发生收缩,其收缩的大小是依据 flex-shrink 的值。我们使用display属性设置成 inline-block 的话,中间会有缝隙,而我们使用 float 属性,元素中间是没有空隙的,float有 left 和 right 两个属性;区别二:当只有一行时,属性是center时,align-items仍然会竖直居中,而align-content会在第一行水平居中。flex有两个轴,一个主轴,一个是交叉轴,默认的主轴是水平方向的,竖直方向的是交叉轴。

2022-11-24 12:57:29 481

原创 《Linux》day5--ssh——ssh登录与scp传文件

例如:我们想免密登录 myserver 服务器,那么就将公钥中的内容,复制到 myserver 中的 ~/.ssh/authorized_keys (在.ssh里面 vim一个authorized_keys,将公钥id_rsa-pub里面的内容复制到这里面)文件里即可。刚开始我们的ssh里面的配置都是初始化的,相当于是毛坯房,没有特殊的功能,比如tmux无法按照指定功能键分屏,vim无法显示行号等等;我们输入 yes ,然后回车,这样就会将该服务器的信息记录在 ~/.ssh/known_host 文件中。

2022-11-17 12:43:45 1137 1

原创 《前端》css总结(上)

直接定义在标签的 style 属性内作用范围:仅对当前标签产生影响例如:black、white、red、green、blue、pink等等。

2022-11-14 14:12:05 2614

原创 《Linux》day4--shell语法(下)

bash中的函数类似于C++中的函数,但是return的返回值与C++不同,返回的是 exit code(退出状态,0表示正常退出,取值为0-255)如果想要获取函数的输出结果,可以通过 echo 输出到sdout 中,然后通过 $(function_name) 来获取sdout中的结果。exit命令可以接受一个整数值作为参数,代表退出状态,如果不指定,默认退出状态是0。在函数内,$1 表示第一个输入的参数,$2 表示第二个输入参数,…注意:函数内的 $0 仍然是文件名,而不是函数名。

2022-11-13 14:18:58 375 1

原创 基础算法——二分图 -- 染色法判别二分图、最大匹配数(匈牙利算法)

x3发现y1已经被匹配了,而y2也被匹配完了,所以x3会让x1能不能换个匹配对象,结果x1就找到了y2,但是y2已经被x2给占了,就让x2能不能换个,x2就找到了y3,这时候x1匹配y2,x2匹配y3,x3从而就成功匹配了y1,最后x4匹配了y4,因此图中最大匹配数就是4(图中的图连线包括虚线和实线)设G=(V,E)是一个无向图,如果顶点V可分割为两个互不相交的子集(A,B),并且图中的每条边(i,j)所关联的两个顶点i和j分别属于这两个不同的顶点集(i in A,j in B),则称图G为一个二分图。

2022-11-10 14:00:06 227

原创 基础图论算法--最小生成树——prim、Kruskal算法

Prim算法更使适应稠密图,时间复杂度为:O(n^2),和Dijkstra算法很相似也肯可以用堆优化来解决稀疏图;但是对于稀疏图,我们更喜欢使用Kruskal(克鲁斯卡尔)算法,时间复杂度为:O(mlogm)Kruskal算法需要判断两个点是否在集合中,以及如何把这两个点连城的一条边加入到集合中,这就需要我们使用。Kruskal算法存边的方法任意,就用最简单的结构体存边即可。特点一:若砍去他的一条边,则会使生成树变成非连通图。,使这条边的两头连通,知道所有的节点都连通。中所有的顶点,并且只含尽可能少的边。

2022-11-08 21:04:53 638 1

原创 《Linux》day3--shell语法(上)

shell是我们通过命令行与操作系统沟通的语言shell脚本可以直接在命令行中执行,也可以将一套逻辑组织成一个文件,方便复用Linux中有很多常见的shell脚本:我们最常用的就是bash,也是Linux系统一般默认使用的。文件开头需要写:#!/bin/bash ---------指明bash为脚本解释器#!

2022-11-07 21:23:06 297 1

原创 《前端》html总结

article >标签表示文档、页面、应用或网站中的独立结构,其意在成为可独立分配的或可复用的结构,如在发布中,它可能是论坛帖子、杂志或新闻文章、博客、用户提交的评论、交互式组件,或者其他独立的内容项目。其他块级元素:< h1>、< p >、< pre >、< ul >、< ol >、< table >< h1 > ~ < h6 >标签:为标题标签,呈现了不同级别的标题,< h1 >级别最高,依次递减。其他内联标签:< i >、< b >、< del >、< ins >、< td >、< a >

2022-11-05 19:42:28 350

原创 《Linux》day2--tmux和vim

在普通的终端中,窗口和其中由于session(任务)而启动的进程是连在一起的,关闭窗口,session就结束了,session内部的进程也会终止,不管是否运行完。但是在具体使用中,我们希望当前的session隐藏起来,在终端中做其他事情,但是又不希望session及其进程被关闭。:在一般命令模式下按 :/?一个tmux可以同时包含多个session,一个session可以包含多个window,一个window可以包含多个pane。命令输入模式,类似于打游戏放技能,按不同字符,即可进行不同操作;

2022-11-01 22:00:55 328

原创 最短路——Dijkstra(朴素法、堆优化)、Bellman-Ford、SPFA(求负环)、Floyd算法

处理负权边我们是采取Bellman-Ford算法或者是SPFA,SPFA算法的适用处更广,但是当有边数权限(在多少步下完成)的时候,我们只能适用Bellman-Ford算法,但在其他情况下我们都可以使用SPFA算法;我们上面知道Bellman_Ford算法会遍历每条边,但是有些边遍历是没有意义的,我们只需要遍历那些到源点距离变小的点才能找到最短路径;SPFA中松弛的概念:一个点到另一个点的路径选择有很多,我们要想找到最优路径,我们肯定要找到中间那个点距离源点距离变小的点,那样这两点之间的路径才会变小。

2022-10-31 20:05:41 417 1

原创 《Linux》day1--常见文件管理命令

cp a/tmp.txt b/tmp1.txt(把文件a中的tmp.txt拷贝复制并重命名为tmp1.txt到文件b中)mv b/tmp.txt a/tmp1.txt :将b中的tmp文件挪到a文件夹中,并重命名。cp a/tmp.txt b(把文件a中的tmp.txt拷贝复制到文件b中)rm tmp.txt tmp1.txt 删除tmp.txt和tmp1.txt。-a:显示所有的文件,包括隐藏的文件(所有的隐藏文件都是以 . 开头的)mv a/tmp.txt b/ :将a中的tmp文件挪到b文件夹中。

2022-10-28 21:18:55 879

原创 一篇文章搞懂约数——试除法求约数、约数个数、约数之和

算数基本定理:N = p1^a1 * p2^a2 * … * pk^ak约数个数:ans = (a1 + 1)(a2 + 1)(a3 + 1)…(ak + 1)约数之和:ans = (p1^0 + p1^1 + … + p1^k) * … * (pk^0 + pk^1 + … + pk^k)

2022-10-19 17:34:25 800 3

原创 一篇文章搞懂质数——试除法判别质数、分解质因数、筛质数(埃氏筛法、线性筛法)

例如:1,3,5,7,11,13,17,19等都是素数,他们只能被自己本身和1整除。即数字n,如果在2 ~ n-1之间都不能被n整数,那么n就是质数。**技巧:**在写循环的时候,我们不需要写 i

2022-10-17 21:37:52 1325

原创 数与图的深度优先搜索、宽度优先搜索、拓扑序列(邻接矩阵、邻接表)

数据结构中,对于图的存储我们是使用邻接矩阵或者邻接表来进行存储的。树就是一种特殊的图,而图我们又分为有向图和无向图,而无向图又是一种特殊的有向图,即每两点之间都存在两条通路。邻接矩阵存储,是指用一个一维数组存储图中顶点的信息,用一个二维数组存储图中边的信息,即各顶点之间的邻接关系,存储顶点之间邻接关系的二维数组称为邻接矩阵。用的很少,我们重点要掌握邻接表。

2022-10-15 15:57:12 674

原创 深度优先搜索(DFS)、广度优先搜索(BFS)

反对角线 y=x+by=x+b, 截距 b=y−xb=y−x,因为我们要把 bb 当做数组下标来用,显然 bb 不能是负的,所以我们加上 +n+n (实际上+n+4,+2n都行),来保证是结果是正的,即 y - x + n。核心目的:找一些合法的下标来表示dgdg或udgudg是否被标记过,所以如果你愿意,你取 udg[n+n−u+i]udg[n+n−u+i] 也可以,只要所有(u,i)(u,i)对可以映射过去就行。对于广度优先遍历,我们都是存储每个点到原点的距离,这样,就可以找到最优解了。

2022-10-14 15:07:56 101

原创 区间合并。

可以先按左端点排序,再维护一个区间,与后面一个个区间进行三种情况的比较,存储到数组里去。

2022-09-27 16:18:47 68

原创 离散化——区间和

离散化的本质就是映射,但是我们为什么需要映射来做呢?有时候,给我们的数据值域很大(10^9),但是数字个数却不是很大(10 ^5),但是这些数据并不是连续的,中间有很多空的地方(0),如果把这些0加上,我们想要开辟一个数组是根本无法达到的。(好像静态全局数组最大能开10 ^7),这时候我们就需要利用离散化,把这些有用的数据映射到一个新的数组上。

2022-09-26 17:53:11 128

原创 哈希表——拉链法、开放寻址法、字符串前缀和哈希

哈希表又称散列表哈希表的内容,我们需要掌握两个内容:1.哈希表的存储结构;包括①拉链法②开放寻址法2.字符串的哈希方式拉链法:开放寻址法:例题:模拟散列表。

2022-09-23 19:14:00 204

原创 堆——堆排序、模拟堆

堆的存储使用一个一维数组来存储的,数组的下标我们是从1开始的,根节点下标为x的左孩子的下标为2x,右孩子的下标为2x+1.堆分为小根堆和大根堆,小根堆的父节点都要比子节点的值小,大根堆相反。2.求集合当中的最小值。4.删除任意一个元素。5.修改任意一个元素。

2022-09-22 14:53:29 223

原创 【STL】常见拷贝算法、替换算法、算数生成算法、集合算法

注意:算法生成算法属于小型算法,头文件为 #include《numeric》注意:利用copy算法进行拷贝的时候,目标容器记得提前开辟好空间。

2022-09-13 18:22:37 207

原创 并查集(路径压缩)

基本原理:每个集合用一棵树来表示,树根的编号就是整个集合的编号,每个节点存储他的父节点,p[x]表示x的父节点。在刚开始的时候,每个集合都是一个独立的集合,都只有一个数,并且集合都是等于自己本身下标的数;所以 p[6] = p[3],也就可以 p[find(6)] = find(3)因为6的祖宗节点本来就是6,此时以5为祖宗节点的集合就为{5,3,6}问题3:如何合并两个集合编号,py是y的集合编号,p[x] = y。所以3的祖宗节点就变成了5,此时以5为祖宗节点的集合为{5,3}例如:p[1] = 1;

2022-09-12 16:42:09 903

原创 【STL】常见遍历算法、查找算法、排序算法

STL常用算法主要是由头文件《algorithm》、《functional》、《numeric》组成《algorithm》是所有STL头文件中最大的一个,范围涉及到比较、交换、查找、遍历、赋值、修改等等《numeric》体积较小,只包括几个在序列上面进行简单数学运算的模板函数《functional》定义了一些模板类,用来声明函数对象(仿函数)

2022-09-12 16:41:21 768

原创 Trie树——Trie字符串统计

Tire:高效的存储和查找字符串集合的数据结构。

2022-09-11 14:08:35 278

空空如也

空空如也

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

TA关注的人

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