指尖 算法 精灵 笔记
洪水填充算法
什么是洪水填充算法? 洪水填充(Flood fill)算法:从一个起始结点开始把附近与其连通的节点提取出或填充成不同颜色颜色,直到封闭区域内的所有节点都被处理过为止,是从一个区域中提取若干个连通的点与其他相邻区域区分开(或分别染成不同颜色)的经典算法。 Info: 常见的洪水填充算法,一般是4邻域填 ......
算法效率中的基本概念
算法复杂度是一个必考的知识点,常常出现在阅读程序题中,让考生进行判断。 1.先理解算法模板的复杂度计算 2.再尝试套用初赛题目中的复杂度计算 3.递归算法的复杂度可以展开计算 算法效率是评估算法性能的一个关键指标,一般而言分析算法效率的方式有两种: 时间复杂度 空间复杂度 在一般的算法分析中,考察的 ......
算法复杂度分析
常见的时间复杂度量级有:常数阶O(1),对数阶O(logn),线性阶O(n),线性对数阶O(nlogn),平方阶O(n2),立方阶O(n3),K次方阶O(nk),指数阶O(2n)。他们的时间复杂度越来越大,执行的效率越来越低。 下面选取一些较为常用的来讲解一下。 常数阶O(1) for(int i ......
高并发情况下的漏桶算法(javascript版)
class LeakyBucket { //高并发情况下的漏桶算法 constructor(capacity, leakRate) { // 创建一个容量为capacity,每秒漏水量为leakRate的漏桶 this.capacity = capacity; this.leakRate = lea ......
js笔记
js基础 javascript是基于对象和事件驱动的脚本语言。 //直接在页面中嵌入脚本 <script> alert('弹窗警告'); document.write("在浏览器上输出文字"); console.log("这句话会在控制台显示,在浏览器上按f12呼出控制台"); </script> ......
硬件开发笔记(十六):RK3568底板电路mipi摄像头接口原理图分析、mipi摄像头详解
前言 本篇继续分析底板原理图mipi电路原理图、mipi摄像头输入硬件接口详解。 RK3568芯片摄像头接口 查看RK3568的芯片手册,摄像头接口并不支持直接sensor模拟信号输入,只能接收mipi信号,RK3568的摄像头接口引脚如下: 只支持mipi的数字信号摄像头。 本来计划是使用RK35 ......
C#加密算法
一、MD5加密 /// <summary> /// MD5_16位加密 /// </summary> public static string GetMD5_16(string value) { string md5Str = string.Empty; MD5 md5 = new MD5Crypt ......
测试框架TestNG学习笔记
目录一、TestNG的基本介绍和如何在maven中引用二、TestNG基本注解与执行顺序实战2.1 注解实战 @Test标签2.2 注解实战 BeforeMethod和AfterMethod2.3 注解实战BeforeClass和AfterClass2.4 注解实战:BeforeSuite和Afte ......
笔记 2023.12.12:杂题选讲
笔记 2023.12.12:杂题选讲 ARC132E 首先发现最终状态形如:中间两个洞夹着的没人动过,它的左边全是 <,右边全是 >,考律左边全是 < 的方案数。然后若给每个洞被选时间标号,则定向方案数是 \(2^{n-\text{后缀最大值}}\)。考虑从后往前 dp,将这个系数直接记在 dp 值 ......
【算法】【线性表】最长公共前缀
1 题目 给k个字符串,求出他们的最长公共前缀(LCP) 样例 1: 输入: k个字符串 = ["ABCD", "ABEF", "ACEF"] 输出: "A" 解释:公共最长前缀是"A". 样例 2: 输入: k个字符串 = ["ABCDEFG", "ABCEFG", "ABCEFA"] 输出: " ......
读程序员的README笔记08_依赖管理
1. 行为准则 2. 依赖管理 2.1. 在现有的代码上增加一个依赖似乎是一个简单的决定 2.2. 不要重复自己”(Don’t repeat yourself,DRY)是一个通常被教导的原则 2.3. 依赖关系带来了风险 2.3.1. 不兼容的变化 2.3.2. 循环依赖 2.3.3. 版本冲突 2 ......
[数字图像处理笔记] 第五章 图像增强
1. 图像增强概念和分类 1.1 图像增强的目的 改善图像的视觉效果 减少 图像中的 噪声,提高 目标与背景的 对比度 强调或抑制 图像中的某些 细节 1.2 图像增强分类 空间域 点处理:灰度变换、直方图处理(均衡化、规定化)、伪彩色处理 模板处理:图像平滑、图像锐化 频率域 高通滤波 低通滤波 ......
【笔记】整体二分
易错 在清除当前区间处理时的影响时,通常有两种做法:(下以区间第 \(k\) 小为例 若个数 res < 待查询第 k 小时,一般就有两种处理方法: k -= res,最后递归的时候直接清空 bit。 k 不变,先递归右区间,清空 bit,再递归左区间。 正确性 在没有中途修改,或者可以认为所有的修 ......
解析几何笔记:空间的正交变换和仿射变换
目录空间的正交变换平移旋转镜面反射空间的正交变换的性质空间的仿射变换空间的仿射变换的性质参考 空间的正交变换 定义 空间的一个点变换σ,如果它在一个直角坐标系的公式: \[\begin{pmatrix} x'\\y'\\z' \end{pmatrix} =A\begin{pmatrix} x\\y\ ......
笔记
# 03运行超市抹零结账行为 # 运行超市抹零结账的行为 money_all=4758837.3847 money_all_str=str(money_all) print("商品的总额为"+money_all_str) print("实际的收取的金额为:"+str(int(money_all))) ......
《重构:改善既有代码的设计》读书笔记一
一、重构原则 1、重构定义 重构:对软件内部结构的一种调整。目的是在不改变软件可观察行为的前提下,提高其可理解性,降低其修改成本。 2、为何重构 在开始说为何重构之前,先说一下很多程序员为何不喜欢重构。 时间紧,一直忙着实现功能,觉得重构影响效率,而且重构不算绩效,简直吃力不讨好 觉得代码写完之后可 ......
文心一言 VS 讯飞星火 VS chatgpt (154)-- 算法导论12.3 1题
一、用go语言,给出 TREE-INSERT 过程的一个递归版本。 文心一言,代码不能运行: 下面是用 Go 语言实现一个递归版本的 TREE-INSERT 过程的代码: package main import "fmt" type TreeNode struct { Val int Left *T ......
高分辨率定时器和动态时钟设计笔记 【ChatGPT】
https://www.kernel.org/doc/html/v6.6/timers/highres.html 高分辨率定时器和动态时钟设计笔记 更多信息可以在OLS 2006年的演讲论文"hrtimers and beyond"中找到。该论文是OLS 2006年会议第1卷的一部分,可以在OLS网 ......
【算法】【线性表】最长连续序列
1 题目 给定一个未排序的整数数组num,找出最长连续序列的长度。 样例 1: 输入: num = [100, 4, 200, 1, 3, 2] 输出: 4 解释:这个最长的连续序列是 [1, 2, 3, 4]. 返回所求长度 4 2 解答 public class Solution { /** * ......
重构笔记4
提炼函数时机:当我们觉得一段大函数内某一部分代码在做的事情是同一件事,并且自成体系,不与其他掺杂时当代码展示的意图和真正想做的事情不是同一件时候,如作者提到的例子。想要高亮,代码意思为反色,这样就不容易让人误解,印证了作者前面说的:当你需要写一行注释时候,就适合重构了做法:一个以他要做什么事情来命名 ......
C++学习笔记七:输出格式
这一篇主要总结一下C++标准库里输出格式相关的库函数。 https://en.cppreference.com/w/cpp/io/manip 1.库: <ostream> <ios> <iomanip> 2.库函数: 2.1 <ostream> std::endl: 输出换行,同"\n"的效果一样。 ......
[数字图像处理笔记] 第四章 图像变换
1. 连续傅里叶变换 1.1 一维连续傅里叶变换 一维连续傅里叶正变换(\(\text{1-Dimensional Continuous Fourier Transform}\)) 对于函数 \(f(x)\),一维连续傅里叶变换有如下定义: \[\Re: \; F(u) = \int_{- \inf ......
mbedTLS移植CTR_DRBG随机数算法
一、概述 因使用真随机数需要硬件支持,在硬件不支持时,我们需要通过软件来实现伪随机数生成器。根据NITS SP 800-90A的推荐,推荐的随机数生成为HASH_DRBG、HMAC_DRBG、CTR_DRBG。本文主要介绍如何通过mbedtls移植实现CTR_DRBG生成随机数。 二、 mbedtl ......
论文笔记: Attributed Graph Clustering: A Deep Attentional Embedding Approach
论文笔记: Attributed Graph Clustering: A Deep Attentional Embedding Approach 中文名称: 属性图聚类:一种深度注意力嵌入方法 论文链接: https://arxiv.org/abs/1906.06532 背景: 图聚类是发现网络 ......
[持续更新][数据结构][算法]涵盖线性表、栈、链表、队列、图、动态规划、分治递归、回溯贪心分支限界、击穿专业课!!!
备考考点整理 内部排序表格 树的主要考点 二叉树的常考 紧紧抓住 \(n_0 = n_2+1\) \(n=n_0+n_1+n_2...n_m\) \(n=n_1+2*n_2+3*n_3...m*n_m\) +1 哈夫曼树没有度为1的结点,也就是\(n_1=0\) 完全二叉树常考 总结 最大岛屿问题( ......
Python_Gui_tkinker学习笔记
# -*- coding:utf-8 -*- import tkinter as tk 创建主窗口 # 调用Tk()创建主窗口 root_window =tk.Tk() 窗口名字 # 给主窗口起一个名字,也就是窗口的名字 root_window.title('C语言中文网:c.biancheng.n ......
C++学习笔记六:运算符(五种基本运算操作,优先级和结合性)
这一章对操作符进行简单的总结: 1.五种基本运算类型:加减乘除,取余 add, substract, multiply, divide, modulus int number1{2}; int number2{7}; int result = number1 + number2; result = ......
【APP小程序】微信小程序包解密+加解密算法JS逆向
简介 现如今大部分微信小程序抓包看到的数据均是加密的,无法通过常规的业务抓包进行测试,现通过对微信小程序包进行解密,获取到微信小程序源码对加解密算法进行分析。 微信小程序解密 小程序包默认路径:C:\Users\Administrator\Documents\WeChat Files\Applet ......
supervisor 学习笔记
supervisor可以运行在大多数类unix系统,但是不能运行在任何windows系统,supervisor运行在python环境中; 可以在python2(2.7)版本上工作、python3(3.4)版本上工作、以及更高python版本上。 supervisor进程管理服务程序安装完毕后,会在系 ......
java高级笔记汇总
一、理论知识背诵汇总篇 1、Java常用类 System类 Date类(日期类) DateFormat类(日期格式化类) SimpleDateFormat类 Math类 Random类 BigInteger(大整数)类 BigDecimal(大小数)类 Timer定时器 2、枚举(将类的对象固定下来 ......