树状数组模板
树状数组 说明: 核心点:lowbit()函数 该函数是用来求二进制数(从右往左数)第一个1以及后面的0组成的值。 例如:lowbit(10100)=100。(都是二进制数) lowbit(x)=x&(-x),x为二进制数。 (对于一个二进制数x,-x相当于按位取反再加1,即求其补码。&就是将其补码的x按位做与运算。) 讲解视屏: 五分钟丝滑动画讲解 | 树状数组_哔哩哔哩_bilibili 相应文章: 树状数组详解 - Xenny - 博客园 (cnblogs.com) 《算法竞赛》上册 罗勇军 第160页 题目推荐: 敌兵布阵 - HDU 1166 - Virtual Judge (vjudge.net) Java代码模板: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081import...
求最小公倍数
求最小公倍数 说明: 求最小公倍数可以在求最大公因数的基础上进行,这样就可以极大提高效率,这里需要明白一个点: a×bgcd(a,b)\frac{a\times b}{gcd(a,b)} gcd(a,b)a×b 上面公式中gcd指的是求最大公因数,意思就是说a与b的最小公倍数就是a和b相乘再除以他们两的最大公因数。 Java模板: 1234567891011121314151617181920212223242526272829303132333435/** * @description: 求最小公倍数 * 这里的最小公倍数做了比较大优化(时间复杂度大大降低),是通过最小公因数来求最小公倍数 * @author 长白崎 * @date 2023/4/5 21:00 * @version 1.0 */public class LCD { public static void main(String[] args) { //测试实例 System.out.println(lcd(3,4)); } /** *...
直线相关
直线相关 说明: 直线的一般式是: Ax+By+C=0$$(A、B不同时为0【适用于所有直线】) 如果两直线平行: $$\frac{A_1}{A_2}=\frac{B_1}{B_2}\not=\frac{C_1}{C_2}\leftrightarrow两直线平行 A1A2=B1B2=C1C2↔两直线重合\frac{A_1}{A_2}=\frac{B_1}{B_2}=\frac{C_1}{C_2}\leftrightarrow两直线重合 A2A1=B2B1=C2C1↔两直线重合 横截距$$a=-\frac{C}{A}$$ 纵截距$$b=-\frac{C}{B}$$ 2:点斜式:$$y-y_0=k(x-x_0)...
二叉树
二叉树 思路 模板 C++模板 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465/*数组模拟二叉树如果以存储起点为1那么:如果2^i<n那么说明有左节点,如果2^i+1<n那么说明有右节点,i代表的是度,n代表总体的长度,该度的最后一位计算就是2^(i+1)-1;比如说你现在的度是1那么度为2的最后一位就是在数组2^(1+1)-1=3当中如果以存储起点为0那么:如果2^i-1<n那么说明有左节点,如果2^i<n那么说明有右节点,i代表的是度,n代表总体的长度,该度的最后一位计算就是2*(i+1)-2;比如说你现在的度是1,那么度为2的最后一位就是在数组2^(1+1)-2=2当中<和<=的问题要看你是怎么存储的如果是从1开始存储那么就要取<=n如果是从0开始存储那么就要取<度必须从1开始因为如果没有二叉树必须要有一个为起点*/#include...
Spring Security框架
Spring Security框架 第一章了解Spring Security Spring Security是基于Spring的安全框架。它提供全面的安全性解决方案,同时在Web请求和方法调用级处理身份确认和授权。在Spring Framework基础上,Spring Security充分利用了依赖注入(DI)和面向切面编程(AOP)功能,为应用系统提供声明式的安全访问控制功能,减少了为企业系统安全控制编写大量重复代码的工作。是一个轻量级的安全框架。他与SpringMVC有很好地集成。 1.1Spring Security 核心功能 (1)认证(你是谁,用户/设备/系统) (2)验证(你能干什么,也叫权限控制/授权,允许执行的操作) 1.2Spring Security 原理 基于 Filter,Servlet,AOP实现身份认证和权限验证 第二章 实例驱动学习 导入依赖: 1234<dependency> <groupId>org.springframework.boot</groupId> ...
常用SQL大全
常用SQL大全 12#显示查询数据库文件存储所在磁盘位置show variables like '%datadir%'; 123456#日志文件路径show variables like 'general_log_file';#错误日志文件路径show variables like 'log_error';#慢查询日志文件路径show variables like 'slow_query_log_file'; 修改数据库密码: 1set password for 'root'@'%' = password('123456'); 1ALTER USER 'root'@'localhost' IDENTIFIED BY '123456'; 这里指的是更新用户名称为root其访问范围为%的账号密码为123456,注意%代表的是无任何访问限制的账户也就是说可以从公网访问,如果%替换为localhost,那么意思就是只能数据库所在机子才能访问。 删除数据库: 1DROP USER 'root'@'localhost'; 这里演示的是删除root账户 刷新权限: 1flush...
STM32学习
STM32 学习 工程架构: ST建议是如果是想自己写中断的话,是写在这个位置; 直接操作寄存器可以查看stm32f10x.h: stm32f10x.adc.c封装了寄存器的操作,提供了更加人性化的操作。 GPIO介绍 GPIO(General Purpose Input...
FCNN神经网络算法
FCNN神经网络算法 1 BP神经网络概念 首先从名称中可以看出,Bp神经网络可以分为两个部分,bp和神经网络。bp是 Back Propagation 的简写 ,意思是反向传播。 BP网络能学习和存贮大量的输入-输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程。它的学习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小。 其主要的特点是:信号是正向传播的,而误差是反向传播的。 举一个例子,某厂商生产一种产品,投放到市场之后得到了消费者的反馈,根据消费者的反馈,厂商对产品进一步升级,优化,一直循环往复,直到实现最终目的——生产出让消费者更满意的产品。产品投放就是“信号前向传播”,消费者的反馈就是“误差反向传播”。这就是BP神经网络的核心。 2 算法流程图 3...
C++复习特性关键点快速总结
C++复习特性关键点快速总结 C++类的定义 访问数据成员 类的对象的公共数据成员可以使用直接成员访问运算符==.==来访问。 为了更好地理解这些概念,可以尝试下面的实例: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758#include <iostream> using namespace std; class Box{ public: double length; // 长度 double breadth; // 宽度 double height; // 高度 // 成员函数声明 double get(void); void set( double len, double bre, double hei );};// 成员函数定义double Box::get(void){ return length *...
Flutter基础学习笔记
Flutter基础学习 目录结构 android:用于android软件的相关 ios:用于ios相关 lib:Flutter代码存放地 test:测试用例代码存放地 Dart以main函数为入口,软件以runApp实体类为软件绘制入口。 123456789import 'package:flutter/material.dart';void main(){ runApp( Center( child: Text('XXX'), ) );} 可以单独将Center抽离成一个组件: 1234567891011121314151617181920212223242526import 'package:flutter/material.dart';void main(){ runApp(MyApp());}class MyApp extends StatelessWidget{ @override Widget build(BuildContext context){ ...














