算法 笔记18

分治算法

分治算法是一种解决问题的策略,将一个规模为N的问题分解为K个规模较小的子问题,这些子问题相互独立且与原问题性质相同。然后,求解这些子问题,再合并这些子问题的解以得到原问题的解。例如,二分法就是一种简单的分治算法。 以下是一个简单的分治算法Java实现示例,该示例使用分治算法计算数组中的最大和最小元素 ......
算法

代码随想录算法训练营第三天

代码随想录算法训练营第三天 | LeetCode 203(移除链表元素) LeetCode 707(设计链表) LeetCode 206(反转链表) 203:移除链表元素 LeetCode 203(移除链表元素) 思路 遍历链表 等值删除 双指针 方法一:虚拟头节点 方法二:直接在原链表删除 方法一 ......
随想录 训练营 随想 算法 代码

[学习笔记] CSP-S 初赛理论

LAST UPD:2023/09/09 内容非常杂乱,算是初赛前的总结吧qwq 排序算法比较 插入排序,冒泡排序,选择排序 : \(O(n^2)\) 其他非线性排序的时间复杂度为 \(O(n)\) 线性排序的时间复杂度为 \(O(n)\) 。 稳定性比较: 插入,冒泡,二叉树,归并以及其他的线性排序 ......
初赛 理论 笔记 CSP-S CSP

离散数学笔记——集合

离散数学笔记——集合 集合的概念 集合是由一些确定的元素所组成的整体,其中的元素可以是任何事物 定义:A={a1,a2,a3,...,an} 表示集合的名称,{} 表示集合的符号。 a1, a2, a3, ... an 表示集合中的元素 x ∈ A 表示元素 x 属于集合 A 集合的特点 集合没有重 ......
数学 笔记

软件设计开发笔记4:QT操作SQLite数据库

有时候我们需要在软件中记录一些历史数据以便于对数据的查询。而我们希望软件不能太复杂,体量也不要太大,这个时候就需要如SQLite这样轻量级的数据库。这篇中我们就来讨论如何在使用QT开发应用是操作SQLite数据库。 0、概述 SQLite是一款开源、轻量级、跨平台的数据库,无需Server,无需安装 ......
设计开发 数据库 笔记 数据 SQLite

Seeing What You Said: Talking Face Generation Guided by a Lip Reading Expert 论文笔记

最近一直在看虚拟人像. 最关键的论文就是wav2lip. 目前项目中也是用的这个. 一个视频加一个语音, 就可以生成用视频里面的头,加语音的新视频. 现在看这篇论文Seeing What You Said: Talking Face Generation Guided by a Lip Readin ......
Generation Reading Talking 笔记 Seeing

python学习笔记-celery介绍和使用

一、celery介绍 1、简介 celery是分布式任务队列celery在执行任务时需要一个消息中间件来接收和发送消息,以及存储结果,一般使用rabbitmq,redis celery的优先:简单:配置和使用比较简单高可用:当任务失败或执行过程中连接中断,celery会自动尝试重新执行快速:每分钟可 ......
笔记 python celery

Node.js+Express+Koa2开发接口学习笔记(一)

http请求概述 浏览器输入一个地址后,进行DNS解析(通过域名查找对应的IP地址),与server建立TCP连接(进行三次握手),发送http请求 server接收到http请求,处理,并返回 客户端(这里指浏览器)接收到返回数据,处理数据(如渲染页面,执行js) 客户端与服务器的三次握手大致可以 ......
接口 Express 笔记 Node Koa2

Go学习笔记4

十三、对象 9.挎包创建结构体实例 【1】创建不同的包: 【2】student.go: 【3】main.go: 发现:如果结构体首字母大写的话,在其它包下可以访问 但是:如果结构体的首字母小写? 解决:结构体首字母小写,跨包访问没问题: 》工厂模式 10.封装 【1】什么是封装: 封装(encaps ......
笔记

centOS安装配置go1.18环境

今天在centOS系统宝塔面板下创建Go项目,打算安装Go环境。 Gin、Gorm中的一些新语言特性似乎要求go1.18及以上,因此我安装并记录下了以下配置过程。 卸载原有旧版本(没有则不做) sudo rm -rf /usr/local/go 下载go对应版本二进制包 wget https://s ......
环境 centOS go1 18 go

Nacos笔记(一):Nacos概述

Nacos 是 Dynamic Naming and Configuration Service的首字母简称,是一个易于构建云原生应用的动态服务发现、配置管理和服务管理平台。 Nacos地图从其特性、架构、业务场景、相关生态、核心竞争力及宏观优势等方面展示了Nacos的全貌,下面从特性、架构、生态方 ......
Nacos 笔记

信息安全系统设计与实现(上) 学习笔记1(教材1,2章)

学习笔记1 知识点总结 第一章 《Unix/Linux系统编程》教材第一章中介绍了Unix和Linux系统的基本概念以及编程环境的设置,介绍了系统编程的重要性和目标,旨在强化学生的编程背景知识,特别关注动态数据结构、进程管理、并发编程、定时器、信号处理、文件系统、TCP/IP和网络编程等方面。大致叙 ......
教材 笔记 系统 信息

Splay学习笔记

这已经是第三次学习 Splay 了 图片内容转载自 yyb 的博客 二叉搜索树 本来是一颗二叉树,但是满足这样的条件: 对于一个节点 \(x\), 满足它的左子树中所有节点的 \(val\) 都小于 \(val_x\),右子树中的所有节点的 \(val\) 都大于 \(val_x\)。 那么很显然, ......
笔记 Splay

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

二、用go语言,下面的排序算法中哪些是稳定的:插入排序、归并排序、堆排序和快速排序?给出一个能使任何排序算法都稳定的方法。你所给出的方法带来的额外时间和空间开销是多少? 文心一言: 在Go语言中,以下排序算法是稳定的: 插入排序 归并排序 而以下的排序算法是不稳定的: 堆排序 快速排序 要使任何排序 ......
文心 导论 算法 chatgpt VS

关于软件架构设计的小笔记

设计良好的计算机软件应该是易于扩展,同时抗拒修改。 这就是著名的开闭原则(OCP)。 换句话说,一个设计良好的计算机系统应该在不需要修改的前提下就可以轻易被扩展。 其实这也是我们研究软件架构的根本目的。如果对原始需求的小小延伸就需要对原有的软件系统进行大幅修改, 那么这个系统的架构设计显然是失败的。 ......
架构 笔记 软件

《信息安全系统设计与实现》第一周学习笔记

《信息安全系统设计与实现》第一周学习笔记 一、知识点归纳以及自己最有收获的内容,选择至少2个知识点利用chatgpt等工具进行苏格拉底挑战,并提交过程截图 第一章 关于本书 涵盖Unix/Linux的所有基本组件,包括进程管理、并发编程、定时器和时钟服务、文件系统、网络编程和MySQL数据库系统 系 ......
笔记 系统 信息

KMP算法 Trie树(9/9)

KMP算法 int n, m; cin >> n >> a + 1 >> m >> b + 1;这两行代码的意思是输入字符串a,b但是是从下标1开始输入的 可以按照此方式输入字符串,但是输出必须按照下标for循环输出,不能直接输出 1 #include<iostream> 2 using names ......
算法 Trie KMP

论文研读_基于决策变量聚类的大规模多目标优化进化算法

多样性和收敛性是什么? 多样性:多样性是指在一个系统、模型或者群体中存在的不同类型的元素的数量和种类。在生物学中,多样性可能指的是一个生态系统中的物种多样性;在社会学中,多样性可能指的是一个社区或者组织中的文化、种族、性别等方面的多样性;在计算机科学中,多样性可能指的是解决一个问题的不同方法或者策略 ......
变量 算法 大规模 目标 论文

Go Module Package Workspace 参考笔记

这篇笔记整理记录了在阅读 go 官方文档中对于依赖管理、包引入、多模块开发时的工作区等相关内容。 module path module path 可以唯一标识一个 module,也是定位一个 module 下的 package 时的前缀。 module path 应该可以表明该 module 是做什 ......
Workspace Package 笔记 Module Go

C#希尔排序算法

前言 希尔排序简单的来说就是一种改进的插入排序算法,它通过将待排序的元素分成若干个子序列,然后对每个子序列进行插入排序,最终逐步缩小子序列的间隔,直到整个序列变得有序。希尔排序的主要思想是通过插入排序的优势,减小逆序对的距离,从而提高排序效率。 希尔排序实现原理 首先要确定一个增量序列(初始间隔), ......
算法

字符串笔记-字符串哈希

目录字符串哈希字符串中的哈希定义与基本性质多项式取模哈希代码模板字符串哈希的应用字符串匹配允许 \(k\) 次失配的最长公共前缀允许 \(k\) 次失配的字符串匹配允许 \(k\) 次失配的最长回文子串最长公共子串线段树维护带修字符串哈希 字符串哈希 字符串中的哈希 定义与基本性质 字符串哈希的定义 ......
字符串 字符 笔记

20211325 2023-2024-1 《信息安全系统设计与实现(上)》第一周学习笔记

20211325 2023-2024-1 《信息安全系统设计与实现(上)》第一周学习笔记 一、任务要求 任务详情 自学教材第1,2章,提交学习笔记(10分),评分标准如下 1. 知识点归纳以及自己最有收获的内容,选择至少2个知识点利用chatgpt等工具进行苏格拉底挑战,并提交过程截图,提示过程参考 ......
20211325 笔记 系统 信息 2023

C#结合OpenCVSharp4使用直方图算法比较图片相似度

C#结合OpenCVSharp4使用直方图算法比较图片相似度 直方图有灰度直方图、颜色直方图,如果是灰度图像,那么就用灰度直方图,这里使用颜色直方图来计算两个图片的相似度。 这里只记录如何使用,至于算法原理,问就是不会。 直方图算法效率高,但精度不够,适合快速比较,例如以图搜图 1. 下载 Open ......

从cnblogs转到知乎写笔记,从评论中向大家学习

Friday, June 24, 2022, 11:29:29 AM 从cnblogs转到知乎写笔记,从评论中向大家学习 本来是想把知乎账号的一句话介绍改成上面这句话的,但是在手机或者电脑上不同日期、时间尝试改了几次,都提示系统维护中。 这简单的改个自我介绍都如此麻烦,让我不由得怀疑这可能不是技术问 ......
cnblogs 笔记

Boost.Asio网络库 学习笔记

Asio网络库 学习笔记 Boost官网:https://www.boost.org/ Boost库 许可证: // Copyright Joe Coder 2004 - 2006. // Distributed under the Boost Software License, Version 1 ......
笔记 Boost 网络 Asio

Python学习笔记:pandas.Series.str.split分列

split() 方法通过指定分隔符对字符串进行切分,返回分割后的字符串列表 pandas.str.split分列 Series.str.split(pat=None, expand=False) 返回分割后的Series ......
笔记 Python pandas Series split

机器学习算法原理实现——线性判别分析LDA

介绍 线性判别分析(Linear Discriminant Analysis, LDA)是一种有监督式的数据降维方法,是在机器学习和数据挖掘中一种广泛使用的经典算法。LDA的希望将带上标签的数据(点),通过投影的方法,投影到维度更低的空间中,使得投影后的点,按类别区分成一簇一簇的情况,并且相同类别的 ......
线性 算法 原理 机器 LDA

【笔记】在线凸优化 - Ch1. Introduction

1.1 The Online Convex Optimization Setting 在线凸优化 Online convex optimization (OCO),是一个带有博弈论、统计学习、凸优化的新玩意 给出如下问题叙述: 考虑一种博弈游戏,回合制,第 \(t\in [T]\) 回合,先由玩家从 ......
Introduction 笔记 Ch1 Ch

负载均衡之一致性哈希算法详解

负载均衡之一致性哈希算法详解 传统的哈希是直接把数据映射到对应的hash表上,但是当我们的数据量很大的时候,我们会采用多个hash节点来存储的方式来减少存储压力。 但是这种hash算法下,如果我们的节点发生了增加或减少的时候,我们就需要将所有数据,重新建立映射关系,这会导致大量的数据迁移和重新映射的 ......
一致性 算法

solidworks 2023 SP3.0 安装笔记

参考文献: Crack自带readme.txt https://mp.weixin.qq.com/s?__biz=Mzk0NjI3ODE4OQ==&mid=2247592805&idx=1&sn=a8af2a6130ebb82972d2e09df555a90b&chksm=c30bb127f47c3 ......
solidworks 笔记 2023 SP3 SP