公钥 算法 笔记04

KMP 字符串匹配 学习笔记

### 前言 最近才发现自己写了后缀数组,但并没有其他的字符串算法,今天先把 $KMP$ 字符串匹配先讲一下。 ### 算法核心 对于字符串匹配,最朴素的方法就是一个字符一个字符地匹配,找到不同的就直接换一个地方匹配。 我们先来看一组样例: $ababababe$ $ababe$ 对于这组样例,暴力 ......
字符串 字符 笔记 KMP

文心一言 VS 讯飞星火 VS chatgpt (78)-- 算法导论7.4 2题

# 二、如果用go语言,证明:在最好情况下,快速排序的运行时间为 Ω(nlgn)。 ## 文心一言: 在最好情况下,快速排序的运行时间为Ω(nlgn)的证明如下: 快速排序是一种分治算法,它将一个数组分成两个子数组,然后对这两个子数组分别进行排序。在最好情况下,每次划分都能将数组等分,即每次划分后得 ......
文心 导论 算法 chatgpt VS

经典c语言排序算法

# 前言 前段时间偶然在公众号中看到了一篇汇总c语言排序算法的文章,感觉蛮不错的,这里直接copy记录下,学习积累一下。 [演示C语言经典排序算法 (qq.com)](https://mp.weixin.qq.com/s/gMpUouNHP9rscsXZuPm1Uw) # 排序算法简介 ## 1.算 ......
算法 语言 经典

[代码随想录]Day22-回溯算法part02

## 题目:[216. 组合总和 III](https://leetcode.cn/problems/combination-sum-iii/) ### 思路: 多加一个记录和的参数,还有一个起始位置的参数(不重复就得加) 结束条件是个数到了k: 1. 如果此时sum == n那就说明答案正确 2. ......
随想录 随想 算法 代码 part

算法复杂度和简单排序

1. 选择排序和冒泡排序 选择排序是O(n2),每次选取最大的,放在最前面,然后下次从第二个开始找到最后一个。 冒泡也是O(n2),一直交换到最后。 2. 插入排序 插入排序最坏是O(n2),最好是O(n),但是算法一般都是按照最坏的来。插入是先排序0-1,然后0-2,然后0-3,eq.:排序0-5 ......
复杂度 算法

iwebsec-文件上传 04 文件头过滤绕过

## 01、题目分析 文件上传的文件头过滤,题目中已经告诉我们了,我们已经知道了过滤类型,但是出于学习和判断的目的,那么我们还是得判断一下文件上传的过滤类型 ## 02、文件上传 既然文件头过滤,直接在木马文件中加上文件头GIF98a,然后直接上传即可,如果有文件类型过滤,那么就像上一关一样更改下文 ......
文件 iwebsec 04

c语言笔记4

# c语言笔记4(指针) ## 1. 指针的应用 ### 1.1 内存空间 32位机: 一次处理数据的大小 4B(字节) 64位机: 一次处理数据的大小 8B (字节) 计算处理数据的最小单位是 1B(字节), 计算存储数据的最小单位 二进制的1b(位) 一个程序启动后的进程分区: 栈、堆、全局区、 ......
语言 笔记

Redis分布式锁笔记

1 redis 分布式锁实现原理 所谓分布式锁,应当基本如下几项核心性质: • 独占性:对于同一把锁,在同一时刻只能被一个取锁方占有,这是锁最基础的一项特征 • 健壮性:即不能产生死锁(dead lock). 假如某个占有锁的使用方因为宕机而无法主动执行解锁动作,锁也应该能够被正常传承下去,被其他使 ......
分布式 笔记 Redis

贪心算法--活动选择问题

> 博客地址:https://www.cnblogs.com/zylyehuo/ * ![](https://img2023.cnblogs.com/blog/3071480/202308/3071480-20230819103606130-1305426951.png) * ![](https:/ ......
算法 问题

贪心算法--拼接最大数字问题

> 博客地址:https://www.cnblogs.com/zylyehuo/ * ![](https://img2023.cnblogs.com/blog/3071480/202308/3071480-20230819103408921-1043621003.png) * ![](https:/ ......
算法 数字 问题

springcloud学习笔记

springcloud2020 开始取消英国地铁命名方式。 注册中心、配置中心: nacos 服务调用:feign 服务熔断:sentinel 网关:gateway 链路:sleuth ......
springcloud 笔记

读发布!设计与部署稳定的分布式系统(第2版)笔记32_适应性

![](https://img2023.cnblogs.com/blog/3076680/202308/3076680-20230816164601035-688425072.png) # 1. 变化就是软件的特性 ## 1.1. 变化保证天天有,存活保障无处寻 ## 1.2. 非每一款软件每天都需 ......
分布式 适应性 笔记 系统 32

java数组04下标越界及小结

# 数组的下标越界及小结 ## 数组的四个基本特点 - 长度是确定的。数组一旦被创建,它的大小就是不可以改变的 - 其元素必须是相同类型,不允许出现混合类型 - 数组中的元素可以使任何数据类型,包括基本类型和引用类型 - 数组变量属引用类型,数组也可以看成是对象,数组中的每个元素相当于该对象的成员变 ......
下标 数组 小结 java

java流程控制04if选择结构

# if选择结构 ### 选择结构分类: - if选择结构 - if双选结构 - if多选结构 - 嵌套的if结构 - Switch多选择结构 ## if单选择结构 - 用于判断一个东西是否可行 - 语法: ```java if(布尔表达式){ //如果布尔表达式为true将执行的语句 } ``` ......
流程 结构 java 04 if

408操作系统 ① 第一章 笔记

"概念、功能和目标", "四个特征", "发展和分类", "运行机制", "中断和异常", "系统调用", "体系结构", "引导", "虚拟机" ......
笔记 系统 408

基于形态学处理的条形码数字分割和识别算法MATLAB仿真

1.算法理论概述 条形码数字的分割和识别是自动识别技术中的重要研究方向之一。本文将从专业角度详细介绍基于形态学处理的条形码数字分割和识别算法,包括实现步骤和数学公式的详细介绍。 一、算法概述 基于形态学处理的条形码数字分割和识别算法包括以下步骤: 图像预处理:对原始图像进行预处理,包括调整亮度和对比 ......
形态学 条形 条形码 算法 形态

贪心算法--背包问题--分数背包

> 博客地址:https://www.cnblogs.com/zylyehuo/ * ![](https://img2023.cnblogs.com/blog/3071480/202308/3071480-20230818215830809-449168614.png) * ![](https:// ......
背包 算法 分数 问题

代码随想录算法训练营第六天|242.有效的字母异位词 349. 两个数组的交集 202. 快乐数 1. 两数之和

哈希表部分: 哈希表,简单来说就是k-v形式查询的结构,用来快速判断一个元素是否出现集合里,如hashmap 核心是哈希函数,k存哈希函数的值,找的时候找查询项的哈希函数值就行,返回v 出现哈希碰撞的时候,查找的流程怎么走呢?(*存疑,之后查一下) 类型:数组+集合set(set、multiset、 ......
随想录 之和 训练营 数组 交集

代码随想里算法训练营第四天|

24. 两两交换链表中的节点 题目 给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。 第一想法 第一次做这个题的时候其实没搞懂怎么两两交换,原来是12、34、56这样... 应该是反转链表的变体,先判断头节点的nex ......
训练营 随想 算法 代码

代码随想录算法训练营第三天| 203.移除链表元素 ,707.设计链表 ,206.反转链表

203.移除链表元素 题目 给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点 。 第一想法 定义一个指针a指向头节点,顺序遍历链表,循环结束的条件是指针a.next为null 删除操作是判断a.next.val= ......
随想录 训练营 随想 算法 元素

贪心算法--找零问题

> 博客地址:https://www.cnblogs.com/zylyehuo/ * ![](https://img2023.cnblogs.com/blog/3071480/202308/3071480-20230818211054542-2028904322.png) * ![](https:/ ......
算法 问题

[代码随想录]Day21-回溯算法part01

## 题目:[77. 组合](https://leetcode.cn/problems/combinations/) ### 思路: 回溯就是dfs的一个特殊情况也就是递归的一种情况,值得注意的一点: 要记得深拷贝,不然最后全是空 ### 代码: ```go var res [][]int var ......
随想录 随想 算法 代码 part

EF学习笔记(一)

DbContext 类 DbContext是实体类和数据库之间的桥梁,DbContext主要负责与数据交互,主要作用:1、DbContext包含所有的实体映射到数据库表的实体集(DbSet < TEntity >)。2、DbContext 将LINQ-to-Entities查询转换为SQL查询并将其 ......
笔记

JavaScript中常见的数据结构和算法及其应用场景简介

在JavaScript编程中,数据结构和算法是必不可少的组成部分。本文将介绍JavaScript中常见的数据结构和算法以及它们的应用场景。 ......
数据结构 算法 JavaScript 场景 常见

C-排序算法

稳定性:在待排序的数据中,对于数值相同的数据,在整个排序过程中如果不会改变他们原来的先后顺序,则认为该排序算法是稳定的。 内排序:所有排序操作都在内存中完成。 外排序:由于数据太大,因此把数据放在磁盘中,而排序通过磁盘和内存的数据传输才能进行。 比较排序:在排序的最终结果里,元素之间的次序依赖于他们 ......
算法

树分块学习笔记

树分块是一种能解决部分操作树上一条链的一种算法。 回忆下序列上的分块,其最精髓的地方在于将序列分成许多段,如果操作的区间包括了某一段,则直接使用整体处理这一段。我们也要使用某种方法使得操作的链也被分成许多块,但像 dfs 序等并不一定能保证整段的大小稳定。 ......
笔记

Learn Git in 30 days——第 04 天:常用的 Git 版本控制指令

写的非常好的一个Git系列文章,强烈推荐 原文链接:https://github.com/doggy8088/Learn-Git-in-30-days/tree/master/zh-cn 本篇文章将带大家学会几个最重要也最基本的版控工作,其中将包含基本的文件操作如新增、删除、重新命名文件,提交变更 ......
指令 Git 常用 版本 Learn

iwebsec-sql注入 04 时间延迟型注入

## 01、题目分析: 三大盲注中的时间型注入,当查询语句正常的时候,不会有什么返回值或者回显,唯一的特征就是可以通过sleep函数来判断sql语句是否正确,也就是说,当有办法能判断输入语句是否正确的时候,步骤就和bool盲注一样了,话不多说,直接先让我们伟大的sqlmap跑起来 ![image]( ......
iwebsec-sql iwebsec 时间 sql 04

.NET Core基础到实战案例零碎学习笔记

前段时间根据 [老张的哲学] 大佬讲解的视频做的笔记,讲的很不错。此文主要记录JWT/DI依赖注入/AOP面向切面编程/DTO/解决跨域等相关知识,还包含一些.NET Core项目实战的一些案例。我是西瓜程序猿,感谢大家的支持! ......
实战 案例 基础 笔记 Core

【文化课学习笔记】【化学】金属及其化合物

# 【化学】必修一:金属及其化合物 ## 钠及其化合物 ### 钠单质 #### 物理性质 1. 颜色:银白色,有金属光泽; 2. 密度:$\mathrm{\rho_{H_2O}>\rho_{Na}>\rho_{煤油}}$(钠可以在煤油中进行保存); 3. 熔点:低于 $100\mathrm{℃}$ ......
文化课 化合物 化学 金属 笔记