算法leetcode day 30

万能欧几里得算法

从这篇博客学的:[link](https://www.luogu.com.cn/blog/ix-35/solution-p5170) 。 解决这样的一类问题: 有一条直线 $y=\frac{Px+B}{Q}$ ,其中 $x\in(0,L],\mid B \mid\lfloor \frac{Pa+B} ......
算法

「学习笔记」Garsia-Wachs 算法

> 前言 本文的资料和图片均来自 $\texttt{OI-Wiki}$。 ## 引入 > 题目描述 在一个操场上摆放着一排 $N$ 堆石子。现要将石子有次序地合并成一堆。规定每次只能选相邻的 $2$ 堆石子合并成新的一堆,并将新的一堆石子数记为该次合并的得分。 试设计一个算法,计算出将 $N$ 堆石 ......
Garsia-Wachs 算法 笔记 Garsia Wachs

文心一言 VS 讯飞星火 VS chatgpt (41)-- 算法导论5.4 5题

# 五、在大小为n的集合中,一个k字符串构成一个k排列的概率是多少?这个问题和生日悖论有什么关系? ## 文心一言: 在大小为n的集合中,一个k字符串构成一个k排列的概率是1/k!,这是由于排列的总数是k!,而每个字符串被选中的概率是相等的,因此每个字符串构成一个排列的概率是1/k!。 这个问题和生 ......
文心 导论 算法 chatgpt VS

Pasos和RAFT算法

Paxos 提出时间1990年,RAFT提出时间2013年。RAFT 是Paxos的简化版,或者说是提高投票效率,但是降低了投票公平性的妥协方案。 ### RAFT 分布式raft(Replicated And Fault Tolerant)选举算法原理 - 分成三个角色,领导者,跟随者,和候选者。 ......
算法 Pasos RAFT

图像拼接算法技术报告

本篇博客先是介绍了图像拼接的一般流程,然后给出了自己手写方法和opencv官方代码的对比,最后在探索小节通过阅读opencv的源码解释了为什么动态物体出现时我的会有鬼影,而opencv stich不会,本质上是算法的思想不同。 ......
算法 图像 报告 技术

go语言编写算法

1、冒泡排序 // 冒泡排序 a := []uint8{9, 20, 10, 23, 7, 22, 88, 102} for i := 0; i < len(a); i++ { for k := i + 1; k < (len(a) - i); k++ { if a[i] > a[k] { a[i] ......
算法 语言

Leetcode

1.两数之和 题目链接:1. 两数之和 - 力扣(LeetCode) 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。 ......
Leetcode

代码随想录算法训练营第七天| 344.反转字符串 、 541. 反转字符串II、 剑指Offer 05.替换空格 、 151.翻转字符串里的单词 、 剑指Offer58-II.左旋转字符串

344.反转字符串 代码: 1 void reverseString(vector<char>& s) { 2 3 int i = 0; 4 int j = s.size() - 1; 5 while (i < j) 6 { 7 char mid = s[i]; 8 s[i] = s[j]; 9 s ......
字符串 字符 随想录 左旋 Offer

python day7

第一阶段 第六章 6.7元组 text1 = ('周杰伦', 11, ['football', 'music']) index = text1.index(11) print(index) print(text1[0]) del text1[2][1] print(text1) text1[2].a ......
python day7 day

python基础day25 深浅copy和第三方模块下载使用

深浅copy 1.对于不可变对象,深拷贝和浅拷贝的效果是一样的,因为不可变对象不需要在内存中复制 2. 对于可变对象,深拷贝和浅拷贝的效果是有区别的,主要原因在于可变对象自身的可变性质 浅拷贝 使用数据类型本身的构造器 list1 = [1, 2, 3] list2 = list(list1) pr ......
深浅 第三方 模块 基础 python

雪花算法-分布式唯一ID

用途(用于解决什么问题) 实现(原理) 参考文献 1.SnowFlake 雪花算法详解与实现 2.实际应用中的问题及解决方案 ......
分布式 算法 雪花

leetcode2390双指针一个指针写一个指针读

while(scan<s.size()){ if(s[scan]== '*'){ write==0?write:write--; scan++; continue; } s[write++]=s[scan++]; return s.substr(0,write); } ......
指针 leetcode 2390

[LeetCode] 1348. Tweet Counts Per Frequency 推文计数

A social media company is trying to monitor activity on their site by analyzing the number of tweets that occur in select periods of time. These perio ......
Frequency LeetCode Counts Tweet 1348

尚医通day11-Java中阿里云对象存储OSS

# 页面预览 ## 用户认证 - 用户登录成功后都要进行身份认证,认证通过后才可以预约挂号。 - 认证过程:用户填写基本信息(姓名、证件类型、证件号码和证件照片),提交平台审核 - 用户认证相关接口: (1)上传证件图片 (2)提交认证 (3)获取认证信息 ### 提交认证 ![image-2023 ......
对象 Java day OSS 11

策略模式:整体替换算法

策略模式是一种行为设计模式,它允许在运行时选择算法的行为。在策略模式中,我们定义了多个算法,并将每个算法封装在一个独立的类中(__策略类__),以便在运行时根据需要进行切换。这使得算法与调用其算法的客户端代码分离,从而实现了更高的灵活性和可维护性。 主要实现方式:1 策略接口 -> n * 具体策略 ......
算法 整体 策略 模式

Leetcode常见报错的原因分析

问题1 问题描述 Line 522: Char 69: runtime error: applying non-zero offset 18446744073709551615 to null pointer (basic_string.h) 报错原因 string res = 0 报错分析 这里报 ......
原因分析 Leetcode 原因

kmp 算法

问题描述 kmp算法解决的是字符串匹配问题,即:字符串P是否是字符串S的子串?如果是,它出现在s的哪些位置?这里我们称 S 为主串,P 为模式串。 思路 首先是暴力匹配算法(Brute-Force算法),代码如下: void BruteForce(string s, string p) { int ......
算法 kmp

LRU 算法与 LFU 算法

算法介绍 LRU LRU 全称是 Least Recently Used,即最近最久未使用算法。 LRU 根据数据的历史访问记录来进行淘汰数据,其核心思想是“如果数据最近被访问过,那么将来被访问的几率也更高,它是页面置换算法的一种,也常用于缓存设计。 LFU LFU 全称是 Least Freque ......
算法 LRU LFU

快速选择算法

问题描述 给定一个长度为$n$的数组,如何在$O(n)$的时间复杂度内找到第$k$大的数。 思路 朴素的想法是先排序,然后直接找到第$k$个元素,时间复杂度为$O(n\log n)$。 我们可以利用快速排序的思想来解决这个问题,考虑快速排序的划分过程,在快速排序的“划分”结束后,数组$A_p \cd ......
算法

字符串哈希算法

问题描述 考虑 1044. 最长重复子串 (Hard),本题思路并不难,可以使用二分答案来解决,假设答案为 mid,那么长度大于 mid 的子串在 s 中只会出现一次,否则至少出现两次。 因此只需要考虑子串在 s 中的出现次数即可,比较直接的想法是使用 key 为 string 的 unordere ......
字符串 算法 字符

Vscdoe 通过cookie 登陆美区 LeetCode

安装插件 vscode 安装leetcode插件。 使用cookie登陆 如果选择使用github登陆leetcode.com,似乎会有无法提交和测试的bug,而用cookie登陆就没有这个问题 使用edge获取cookie 使用Firefox获取的cookie有问题,无法正常登陆 右键,选择检查 ......
LeetCode Vscdoe cookie

Log in Leetcode in Vscode With Cookies" #标题

Install leetcode plug-in in vscode It's easy by search in Extension. Log in with cookies If you want to login leetcode in vscode leetcode plug-in by g ......
Leetcode Cookies 标题 Vscode in

FreeBSD 30周年

Happy 30th, FreeBSD! Why the FreeBSD open source project has endured As FreeBSD marks three decades of success, we can thank open source freedom, a st ......
FreeBSD

代码随想录day07

第三章 哈希表part02 454.四数相加II 383. 赎金信 15. 三数之和 18. 四数之和 454.四数相加II 思路:采用分为两组,HashMap 存一组,另一组和 HashMap 进行比对。 首先求出 A 和 B 任意两数之和 sumAB,以 sumAB 为 key,sumAB 出现 ......
随想录 随想 代码 day 07

马拉车算法

截图来自董老师https://www.bilibili.com/video/BV173411V7Ai/?spm_id_from=333.999.0.0&vd_source=23dc8e19d485a6ac47f03f6520fb15c2 P3805 【模板】manacher 算法 #include< ......
算法

Loj #6041. 「雅礼集训 2017 Day7」事情的相似度

做到这题,发现自己对$SAM$的一些性质还不知道,特此记录。 题目要求01字符串区间内前缀的最长公共后缀 由SAM parent tree性质可知,2个前缀的最长公共后缀就是它们在parent tree上lca的len值 如何去感性理解 我们知道,在parent tree上每个节点都代表了一个end ......
事情 6041 2017 Day7 Loj

【安全学习之路】Day27

![](https://img2023.cnblogs.com/blog/3073714/202306/3073714-20230613214415340-911562844.png) ![](https://img2023.cnblogs.com/blog/3073714/202306/30737 ......
Day 27

《数据结构与算法》之二叉树(补充树)

一.树结构之二叉树操作 二叉树的查找 二叉搜索树,也称二叉排序树或二叉查找树 二叉搜索树:一棵二叉树,可以为空,如果不为空,应该满足以下性质: 非空左子树的所有结点小于其根结点的键值 非空右子树的所有结点大于其根结点的键值 左右子树都是二叉搜索树 对于二叉树的查找,其实沿用的是分治法的思想,所以我们 ......
数据结构 算法 结构 数据

文心一言 VS 讯飞星火 VS chatgpt (40)-- 算法导论5.4 4题

# 四、一次聚会需要邀请多少人,才能让其中 3 人的生日很可能相同? ## 文心一言: 为了解决这个问题,我们需要先计算出所有可能的生日组合数,然后计算出其中生日相同的组合数。 已知需要邀请的人数为:23人 根据组合数公式,可计算出所有可能的生日组合数: 2.58520167*10^{22} 根据生 ......
文心 导论 算法 chatgpt VS

python基础day24 subprocess、hashlib和日志模块

subprocess模块 用处: 1. 以后我们可以用自己的电脑连接上别人的电脑(socket) 2. 通过subprocess可以在别人的计算机上执行我们想要执行的命令 3. 把在别人计算机上执行的结果返回过来 import subprocess res = subprocess.Popen('t ......
subprocess 模块 hashlib 基础 python