算法leetcode day 30

manacher算法

初始化? 给定一个字符串,求其最长回文串,比如: aababa,最长回文长度为 3,是ababa; abbabb,最长回文长度为 2,是abba; 以上两个回文串有奇回文和偶回文,这样处理比较繁琐,需要我们进行分类讨论。 所以我们第一步就是先将字符串统一处理为奇回文。 也就是将每两个字符串之间插入一 ......
算法 manacher

Day01

# Markdown ## 字体 **Hello world** *Hello world* ***Hello world*** ~~Hello world~~ ## 引用(“> +") > 选择 ## 分割线 (” "or"***") * * * * * * ## 图片 (”![]()“)  ......
Day 01

[已解决] Compilation error ptxas fatal : Value ‘sm_30‘ is not defined for option ‘gpu-name‘

在用cmake编译cuda程序时,总是报Compilation error ptxas fatal : Value ‘sm_30’ is not defined for option ‘gpu-name’问题,也是折腾了好久,感谢这位小哥的解决方案,亲试无误,万分感谢~ 转载:https://blo ......
Compilation gpu-name defined option error

再谈 qbxt2023国庆刷题 Day7 T2 树

T2 倍增+换根即可,但赛时难写 赛时想得线段树二分,也可 from:https://www.cnblogs.com/fox-konata/p/17742669.html 回头一看老师代码,发现换根换的非常神奇,长见识了 方法0: 第一次思考,以为要记录走排名为 \(a_x\) 和 \(a_x+1\ ......
国庆 qbxt 2023 Day7 Day

ATPG的D算法介绍

ATPG算法 实现测试向量自动化生成的算法,其中包含D算法、PODEM算法和FAN算法等。 D算法 为测试某一节点单固定故障,将其故障信息传递反映到输出中体现出来,我们把用穷举得出正确路径的方法称之为D算法。 每个节点分为四种状态,1、0、X、D和D(-)。 其中,X为0或1,意思是该节点值不影响最 ......
算法 ATPG

自定义GUID的变种--排序算法

概述 .NET生成的GUID唯一性很好,用之方便,但是,缺少像雪花算法那样的有序性。虽然分布式系统中做不到绝对的有序,但是,相对的有序对于目前数据库而言,索引效率等方面的提升还是有明显效果的(当然,我认为,这是数据库的问题,而非编程的问题,数据库应该处理好任何类型数据作为主键索引时的性能,除非在SQ ......
变种 算法 GUID

manacher 回文串处理算法

忘了具体什么时候写的,应该是 2023.8 初 这算是个算法复习,因为我太菜了以前学的都不会了。 manacher 回文串处理算法 其实这个我已经看两天了却一直没有看懂,觉得自己很愚笨,结果发现是自己一直不想去理解吧,然后今天仔细研究了以后发现就是那么个东西,没有什么很深奥的东西,那就自己整理一下思 ......
回文 算法 manacher

10 对比不同的优化算法

import numpy as np import matplotlib.pyplot as plt import scipy.io import math import sklearn import sklearn.datasets from opt_utils import load_param ......
算法 10

【算法】国庆加班,火锅与Linq.AddRange的奇妙螺旋

在国庆假期的一个傍晚,小悦正在家中享受火锅美食。她嘴里咀嚼着鲜嫩的牛肉,脸上洋溢着满足的微笑。突然,手机铃声响起,打破了这温馨的氛围。她拿起手机一看,是公司打来的电话。 “小悦,有个紧急的项目需要处理,你能来公司加一下班吗?”电话那头传来领导焦急的声音。 小悦顿时嘟起嘴,不太情愿地离开了火锅桌,踏上 ......
螺旋 算法 国庆 火锅 AddRange

Day14.形参与实参的介绍和具体使用

1.形参与实参: 2.位置参数: 3.关键词参数: 4.默认参数__默认形参: 5.位置形参与默认形参混用强调点一和二: 6.位置形参与默认形参混用强调点三: 7.1.可变长度的位置参数: 7.2.可变长度的参数_2星号可以用在实参中: 8.可变长度的关键字参数: 9.可变长度的关键字参数_双星号用 ......
Day 14

扩展欧几里得算法

算法 阅读此篇前可先阅读欧几里得算法。 给定 \(a,b,s\),求 \(ax+by=s\) 的任意一组解。 证明: 由裴蜀定理得:二元一次方程 \(ax+by=c\) 的有解条件是 \(\gcd(a,b) \mid c\)。 由欧几里得算法得知 \(\gcd(a,b)=\gcd(b,a\mod b ......
算法

Leetcode刷题模版总结

1. 双指针 双指针主要用于遍历数组,两个指针指向不同的元素,从而协同完成任务。也可以延伸到多个数组的多个指针。 1)滑动窗口 若两个指针指向同一数组,遍历方向相同且不会相交,则也称为滑动窗口(两个指针包围的区域即为当前的窗口),经常用于区间搜索。 例题: class Solution { publ ......
模版 Leetcode

算法性能分析

1.究竟什么是时间复杂度 时间复杂度是一个函数,它定性描述该算法的运行时间。假设算法的问题规模为n,那么操作单元数量便用函数f(n)来表示,随着数据规模n的增大,算法执行时间的增长率和f(n)的增长率相同,这称作为算法的渐近时间复杂度,简称时间复杂度,记为 O(f(n)) 2.什么是大O 算法导论给 ......
性能分析 算法 性能

2023牛客国庆集训派对day8/牛客2020年暑期多校day8

Preface 妈的多校都是些什么题啊,一场比赛后三小时全程啥也干不了只能划划水,最后开榜就看手速排名,给他唐完了 这场开场和前期久违地顺利,按难度开了三道签到后队里讨论了下秒出了A的正解 我爬上去摸了会虽然nt错误频发WA了两发,但后面还是成功抢到了A题的一血,同时徐神和祁神坐在下面的时候把E题规 ......
day8 day 国庆 2023 2020

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

五、用go语言,栈插入和删除元素只能在同一端进行,队列的插入操作和删除操作分别在两端进行,与它们不同的,有一种双端队列(deque),其插入和删除操作都可以在两端进行。写出4个时间均为 O(1)的过程,分别实现在双端队列的两端插入和删除元素的操作,该队列是用一个数组实现的。 文心一言: 在 Go 语 ......
文心 导论 算法 chatgpt VS

算法异或的运用

题目描述 在一条无限长的路上,有一排无限长的路灯,编号为1,2,3,4,…。 每一盏灯只有两种可能的状态,开或者关。如果按一下某一盏灯的开关,那么这盏灯的状态将发生改变。如果原来是开,将变成关。如果原来是关,将变成开。 在刚开始的时候,所有的灯都是关的。小明每次可以进行如下的操作: 指定两个数,a, ......
算法

算法之动态规划(DP)求解完全背包问题(状态转移式方程推导)

完全背包是01背包的进阶版。在这里补充一下代码随想录的完全背包状态转移式的推导。有兴趣的可以先看一看原版。 状态转移方程 状态:dp[i][j] 选择前i个物品,容量为j的背包时 所选物品价值总和最大。 状态转移: dp[i][j]=max(dp[i-1][j-k* v[i]]+k* w[i]) ( ......
方程 算法 背包 状态 动态

Leetcode刷题83. 删除排序链表中的重复元素

给定一个已排序的链表的头 head , 删除所有重复的元素,使每个元素只出现一次 。返回 已排序的链表 。 示例 1: 输入:head = [1,1,2] 输出:[1,2] 示例 2: 输入:head = [1,1,2,3,3] 输出:[1,2,3] 提示: 链表中节点数目在范围 [0, 300]  ......
Leetcode 元素 83

基础算法--字符串

\(KMP\) \(KMP\) 算法(Knuth-Morris-Pratt 算法)是一个著名的字符串匹配算法,效率很高,但是确实有点复杂。 基本概念 \(1\)、s[ ]是模式串,即比较长的字符串。 \(2\)、p[ ]是模板串,即比较短的字符串。(这样可能不严谨。。。) \(3\)、“非平凡前缀” ......
字符串 算法 字符 基础

LeetCode——95. 不同的二叉搜索树 II

本次博客,我将记录leetcode95,不同的二叉搜索树 95. 不同的二叉搜索树 II 本题要求我们从1~n构造不同的二叉搜索树 因为好久不碰数据结构了,导致对二叉搜索树的概念十分模糊 以下是一些概念: 二叉搜索树(BST,Binary Search Tree),也称二叉排序树或二叉查找树。 性质 ......
LeetCode 95 II

C++算法之旅、08 基础篇 | 质数、约数

算法学习笔记,记录容易忘记的知识点和难题。试除法、分解质因数、筛质数、约数个数、约数之和、最大公约数 ......
约数 质数 算法 之旅 基础

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

四、用go语言,重写 ENQUEUE 和 DEQUEUE 的代码,使之能处理队列的下溢和上溢。 文心一言: 在 Go 语言中,我们可以使用切片来实现队列。下面是如何实现 ENQUEUE 和 DEQUEUE 操作,同时处理队列的下溢和上溢的情况: package main import "fmt" t ......
文心 导论 算法 chatgpt VS

【ACM算法】整数分块

思考如何计算以下算式: \[\sum_{i=1}^{n} \lfloor \frac{n}{i} \rfloor \qquad (n \le 10^6) \]所有人都会觉得这个非常简单,一个for循环可以直接解决,时间复杂度 \(O(n)\),但是如果将 \(n\) 的范围改大一点点,改成 \(n\ ......
整数 算法 ACM

谷粒商城 -day1

1、安装虚拟机 virtual box 下一步,小白安装,直接下一步 2、安装vagrant,更好的新建虚拟机 ......
谷粒 商城 day1 day

04-05 8.30下 子网划分

网速 100M 位/s (秒) 12.5M 字节/s(秒) 1000M 位/s (秒) 125M 字节/s (秒) 存储单位 1字节 byte =8 位bit 8倍 2G大片,100M网速,下载需要2.73分钟 2048/12.5/60=2.73min 1KB =1024字节 1MB =1024KB ......
8.30 04 05 30

10.5算法

对称二叉树给你一个二叉树的根节点 root , 检查它是否轴对称。 示例 1: 输入:root = [1,2,2,3,4,4,3]输出:true示例 2: 输入:root = [1,2,2,null,3,null,3]输出:false 提示: 树中节点数目在范围 [1, 1000] 内-100 <= ......
算法 10.5 10

【知识点】如何找到正确的算法?

算法思路 一、多组查询 · 考虑如何利用已知信息避免重复查询。 · 考虑各种预处理,例如前缀和。 二、规模减小 · 考虑树、链等 三、以小见大 · 考虑特殊情况,并考虑以此为基础继续转移 四、模拟优化 · 考虑高维复杂度算法,并考虑尽可能优化 五、题面信息 · 数据规模 \[n≥10^8:O(\lo ......
知识点 算法 知识

【知识点】如何找到正确的算法?

# 算法思路 **一、多组查询** · 考虑如何利用已知信息避免重复查询。 · 考虑各种预处理,例如前缀和。 **二、规模减小** · 考虑树、链等 **三、以小见大** · 考虑特殊情况,并考虑以此为基础继续转移 **四、模拟优化** · 考虑高维复杂度算法,并考虑尽可能优化 **五、题面信息** ......
知识点 算法 知识

2023“钉耙编程”中国大学生算法设计超级联赛(3)

题解: https://files.cnblogs.com/files/clrs97/2023HDU%E7%AC%AC%E4%B8%89%E5%9C%BA%E9%A2%98%E8%A7%A3.pdf Code: A. Magma Cave #include<iostream> #include<al ......
钉耙 算法 联赛 大学生 大学

【基础算法】排序算法 —— 插入排序

一、算法原理 插入排序将数组分为已排序区间和未排序区间,初始已排序区间只有数组第1个元素,未排序区间从下标 1 开始到数组末尾。每次取未排序区间的第1个元素,将它插入已排序区间的合适位置,并保证已排序区间一直有序。重复这个过程,直到未排序区间为空,算法结束。 给有序数组(已排序区间)插入1个新元素, ......
算法 基础