分量 算法 笔记tarjan

根号算法学习笔记

最近整理并学习了一些根号算法,总共分为三个。 $1.$ 莫队 $2.$ 分块 $3.$ 根号分治 $1.$ 莫队 $1_.$ 序列莫队 这是一个离线算法(当然有在线的, 但是 CCF 不会卡吧)。 它可以在 $q\sqrt{n}+n\sqrt{n}$ 的时间内解决数列上多组询问的问题,问题大多给一个 ......
根号 算法 笔记

读书笔记《代码大全》

1.BUG 是发现不足的绝佳机会,也是将代码优化的绝好机会。比如统计一下最常出现的BUG,并找到解决的方法。 2.将代码封装在方法里,可以降低复杂度、隐藏细节、提高可读性、减少代码重复。而我个人的体会是,阅读代码时,可以只阅读自己关心的代码,而不需要去在意与之无关的代码。DEBUG 的时候,只要看调 ......
代码 笔记 大全

人月神话 读书笔记 01

第1章 焦油坑1.1 编程系统产品(Programming Systems Product)开发的工作量是供个人使用的、独立开发的构件程序的九倍。 我估计软件构件产品化引起了3倍工作量,将软件构件整合成完整系统所需要的设计、集成和测试又强加了3倍的工作量,这些高成本的构件在根本上是相互独立的。 1. ......
神话 笔记 01

构建之法阅读笔记05

8.1 软件需求 1、获取和引导需求:软件团队需要找到软件的利益相关者,了解和挖掘他们对软件的需求,引导他们表达出对软件的需求;需求还可以来自各种管理机构;需求不仅来自外界,还可以来自软件企业本身;需求还可以来自技术团队本身;有些需求的目的是要更好地了解用户的行为和需求。 2、分析和定义需求 3、验 ......
笔记

文心一言 VS chatgpt (17)-- 算法导论4.1 3~4题

三、在你的计算机上实现最大子数组问题的暴力算法和递归算法。请指出多大的问题规模n0是性能交叉点一一从此之后递归算法将击败暴力算法?然后,修改递归算法的基本情况一一当问题规模小于 n0 时采用暴力算法。修改后,性能交叉点会改变吗? 文心一言: 在你的计算机上实现最大子数组问题的暴力算法和递归算法,需要 ......
文心 导论 算法 chatgpt 4.1

【Vue2.x源码系列08】Diff算法原理

vue2采用了头尾双指针的方法,每次比对时,优先进行头头、尾尾、头尾、尾头的比对尝试,如果都没有命中才会进行乱序比对。 ......
算法 源码 原理 Vue2 Diff

python学生管理系统笔记(+增删改查,但不存入数据库或文件中)

原本的基础上+增删改查,但不存入数据库或文件中,就是数据只在一次运行的页面中进行增删改查,但是重新运行不会有之前的数据,因为没有更新到json或者数据库中。 1.LoginPage.py import tkinter as tk from tkinter import messagebox from ......
管理系统 数据库 文件 笔记 数据

学习笔记:线段树

在已经掌握线段树的基本用法后的做题整理。给自己复习用的。 用 $mid$ 表示 $(l+r)/2$,$u$ 表示当前区间节点(父区间),$ls,rs$ 分别表示当前区间的左、右子区间节点。 普通维护序列 P2023 [AHOI2009] 维护序列 修改:区间加,区间乘;询问:区间求和。 双倍经验:P ......
线段 笔记

java 基本笔记

语法八个基本变量 整型byte,short,int,long 浮点型float,double 布尔型boolean 字符型char 引用类型/包装类型 Integer默认为null string 功能上可以扩展,如方便互相转换java还是以类为基础的,操作参数大都为object类型。object更普 ......
笔记 java

Treap树学习笔记

等我写完。 普通fhq treap: enum { Maxn = 1000005 }; struct FHQTreap { int lson[Maxn], rson[Maxn], data[Maxn]; int rnd[Maxn], sze[Maxn], root, tot, seed; FHQTr ......
笔记 Treap

React笔记-生命周期(七)

React笔记-生命周期(七) 生命周期值React组件从装载到卸载的全过程 在这个过程中React提供了多个内置函数供开发者在不同阶段执行需要的逻辑 状态组件由3个阶段组成 挂载阶段(MOUNTING) 更新阶段(UPDATING) 卸载阶段(UNMOUNT) 从纵向划分为2个阶段 Render阶 ......
周期 生命 笔记 React

读SQL进阶教程笔记16_SQL优化让SQL飞起来

1. 查询速度慢并不只是因为SQL语句本身,还可能是因为内存分配不佳、文件结构不合理等其他原因 1.1. 都是为了减少对硬盘的访问 2. 不同代码能够得出相同结果 2.1. 从理论上来说,得到相同结果的不同代码应该有相同的性能 2.2. 遗憾的是,查询优化器生成的执行计划很大程度上要受到代码外部结构 ......
进阶教程 SQL 笔记 教程 16

【学习笔记】Prufer 序列

其实一直不会怎么将树和 Prufer 序列互相转换,但是刚刚做题发现要用到,所以去看了眼。 前面的内容复制的之前写的内容。 定义 Prufer 序列是一种将无根树映射到一个序列上,且每种序列都唯一对应一种无根树。 具体构造如下: 找出所有叶子节点中编号最小的一个。 删除这个叶子节点,并且将这个叶子节 ......
序列 笔记 Prufer

常见的算法浅学一下,二分查找、插入冒泡归并排序

二分查找 二分查找(Binary search)也称折半查找,是一种效率较高的查找方法。但是要求数组必须是有序的。 最好时间复杂度是: O(1),最好情况下只需要进行1次比较就能找到目标元素 最坏**时间复杂度是: O(log2n),最坏情况下查找至最后一个元素,或查找不到目标元素 平均**时间复杂 ......
算法 常见

算法训练DAY01

算法训练DAY01| 704. 二分查找、27. 移除元素 704. 二分查找 大体思路: 处理数组为空的特殊情况 初始化left,right,使用[l,r]形式的二分法 确定while条件,处理二分 实现细节: (l+r)//2 python中//运算符向下取整 处理while中的分支时,最好用c ......
算法 DAY 01

《C++ Primer》(第5版) 读书笔记

第1章 开始 本章介绍C++的大部分基础内容:类型、变量、表达式、语句及函数。在这个过程中,我们会简要介绍如何编译及运行程序。在学习完本章并认真完成练习之后,你将具备编写、编译及运行简单程序的能力。后续章节将假定你已掌握本章中介绍的语言特性,并将更详细地解释这些特性。 学习一门新的程序设计语言的最好 ......
笔记 Primer

扩展欧里几得算法

#一、任务详情 0. 在openEuler(推荐)或Ubuntu或Windows(不推荐)中完成下面任务 参考《密码工程》p112伪代码实现ExtendedGCD(int a, int b, int *k, int *u, int *v)算法(5 在测试代码中计算74模167的逆。(5 自己设计至少 ......
算法

密码工程-扩展欧几里得算法

任务详情 0. 在openEuler(推荐)或Ubuntu或Windows(不推荐)中完成下面任务 1. 参考《密码工程》p112伪代码实现ExtendedGCD(int a, int b, int *k, int *u, int *v)算法(5 2. 在测试代码中计算74模167的逆。(5 3. ......
算法 密码 工程

密码工程-扩展欧几里得算法

密码工程-扩展欧几里得算法 0. 在openEuler(推荐)或Ubuntu或Windows(不推荐)中完成下面任务 1. 参考《密码工程》p112伪代码实现ExtendedGCD(int a, int b, int *k, int *u, int *v)算法(5 2. 在测试代码中计算74模167 ......
算法 密码 工程

密码工程-扩展欧几里得算法

任务详情 在openEuler(推荐)或Ubuntu或Windows(不推荐)中完成下面任务 参考《密码工程》p112伪代码实现ExtendedGCD(int a, int b, int *k, int *u, int *v)算法(5 在测试代码中计算74模167的逆。(5 自己设计至少两个测试代码 ......
算法 密码 工程

密码工程-扩展欧几里得算法

密码工程-扩展欧几里得算法 20201331黄文刚 任务详情: 0. 在openEuler(推荐)或Ubuntu或Windows(不推荐)中完成下面任务 参考《密码工程》p112伪代码实现ExtendedGCD(int a, int b, int *k, int *u, int *v)算法(5 在测 ......
算法 密码 工程

Effective Modern C++ 学习笔记

前言记录下阅读此书的感想与总结,一方面能巩固复习,另一方面也能更好地浓缩本书的精华,方便日后的回看。 第五章 右值引用、移动语义和完美转发它们带来的好处 移动语义使得编译器能使用效率更高的移动操作来替换昂贵的复制操作移动语义使得创建只移对象成为可能,如:std::unique_ptr, td::th ......
Effective 笔记 Modern

密码工程-扩展欧几里得算法

在openEuler(推荐)或Ubuntu或Windows(不推荐)中完成下面任务 参考《密码工程》p112伪代码实现ExtendedGCD(int a, int b, int *k, int *u, int *v)算法(5') 在测试代码中计算74模167的逆。(5') 自己设计至少两个测试代码。 ......
算法 密码 工程

可变策略的拟人式三维装箱算法实现-开源

问题 给定一个长方体容器和较多不同形态的长方体货物,需确定装箱策略,使货物尽可能多地装填到容器中。 假设与约束 1、货物可向上码放;2、货物必须完全包含在容器中;3、任意两个货物内的任意一点不可在空间中的同一位置;4、货物不可悬空放置,即货物下方必须有其他货物或容器底部支撑;5、货物与容器平行放置, ......
拟人 算法 策略

Python中的递归简明入门|Python私教辅导笔记「递归练习)

你好,我是悦创。 一、什么是递归? 在计算机科学中,递归是一种编程技术,它涉及到函数调用自身来解决问题。递归函数就像一个循环,能够反复执行某个任务,直到达到一个特定的条件。许多实际问题都可以通过递归的方式来解决,比如数据搜索、排序等。 二、Python中的递归 在Python中,我们可以通过定义一个 ......
Python 教辅 笔记

基于SOA海鸥优化算法的二阶时滞系统PID控制器最优参数计算matlab仿真

1.算法仿真效果 matlab2022a仿真结果如下: 2.算法涉及理论知识概要 一般来说,海鸥是群居性的,它们用自己的智慧来寻找并攻击猎物。海鸥最重要的是它们的迁徙和攻击行为。迁徙被定义为海鸥从一个地方到另一个地方的季节性迁移,以寻找最丰富食物来源,以提供足够的能量。该行为可描述为: 在迁徙过程中 ......
时滞 海鸥 控制器 算法 参数

国密算法环境配置

#国密算法环境配置 ##参考链接 openssl配置:https://blog.csdn.net/bruce135lee/article/details/81811403 openssl命令:https://www.cnblogs.com/rocedu/p/14891816.html#openssl ......
算法 环境

代码随想录算法训练营第七天 | 454.四数相加II 、383.赎金信 

📋目录 ✅ 454.四数相加II ➡️ 383.赎金信 ➡️ 15.三数之和 ➡️ 18.四数之和 454.四数相加II ⏰ 1.解题思路 定义一个map,key用来存放a和b的两数之和,value用来存两数之和出现的次数 将四个数组两两分组,nums1和nums2、nums3 和 nums4 定 ......
随想录 训练营 随想 算法 代码

算法学习day10栈与队列part01-232、225

package LeetCode.StackAndQueuepart01; import java.util.LinkedList; import java.util.Queue; /** * 225. 用队列实现栈 * 请你仅使用两个队列实现一个后入先出(LIFO)的栈,并支持普通栈的全部四种操作 ......
队列 算法 part day 232

算法学习day09字符串part02-28、459--待办

package LeetCode.stringpart02; /** * 28. 找出字符串中第一个匹配项的下标 * 给你两个字符串 haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串的第一个匹配项的下标(下标从 0 开始)。 * 如果 needle ......
字符串 算法 字符 part day