算法 随想录 柠檬水 队列

【算法】归并排序算法

归并排序 归并排序的思想 归并排序运用了典型的分治策略,是一种稳定的排序算法,其时间复杂度为 \(O(nlogn)\) ,空间复杂度为 \(O(n)\)。 分治的基本思想是将一个规模为N的问题分解为K个规模较小的子问题,这些子问题相互独立且与原问题性质相同。求出子问题的解,就可得到原问题的解。分治策 ......
算法

【算法】循环不变式

循环不变式 一、数学归纳法 因为循环不变式的定义与数学归纳法类似,所以我们先来看看数学归纳法。 我们首先从高中开始回忆起,有关于数列的数学归纳法。 一般的,证明一个与正整数 \(n\) 有关的命题,可以分为以下两个步骤[1]: 1. 归纳奠基:证明当 \(n=n_0 (n_0 \in N^*)\) ......
算法

R语言使用Metropolis-Hastings采样算法自适应贝叶斯估计与可视化|附代码数据

原文链接:http://tecdat.cn/?p=19889 原文出处:拓端数据部落公众号 最近我们被客户要求撰写关于Metropolis-Hastings采样的研究报告,包括一些图形和统计输出。 如果您可以写出模型的似然函数,则 Metropolis-Hastings算法可以负责其余部分(即MCM ......

基于方向编码的模板匹配算法matlab仿真

1.算法运行效果图预览 2.算法运行软件版本 MATLAB2022a 3.算法理论概述 模板匹配是一种常见的计算机视觉方法,用于在一幅图像中寻找指定的模板。它在目标检测、图像识别、物体跟踪等领域中有广泛的应用。基于方向编码的模板匹配算法是一种改进的模板匹配方法,它通过将图像转化为方向编码的形式,实现 ......
算法 编码 方向 模板 matlab

21python实现简单的消息队列

from multiprocessing import Queue ''' q=Queue(num)若括号中没有指定最大可接收的消息数量,或数量为负值,那么就代表可接收的消息数量没有上限(直到内存的尽头)。函数也是队列的初始化。 Queue.qsize() 返回当前队列包含的消息数量。 Queue. ......
队列 消息 python 21

最近公共祖先 Tarjan算法

P3379 【模板】最近公共祖先(LCA) 利用并查集 点击查看代码 #include<bits/stdc++.h> using namespace std; const int N = 5e5 + 10; vector<int> g[N]; vector<pair<int,int>> query[ ......
祖先 算法 Tarjan

实现一致性哈希算法

背景 一致性哈希主要用于分布式系统解决数据存储与访问的负载问题,极大的提高了可用性与扩展性。分布式系统往往是把数据分布到不同的节点,这些节点可以动态的加入或离开集群,这样就需要考虑一些问题,如果按照传统的hash算法进行数据分布,动态扩缩节点就需要对数据进行rehash,数据量大或请求数多的时候,对 ......
一致性 算法

一致性哈希算法实现(java)

代码基本实现 未完待续........... public static void main(String[] args) { ​ TreeMap<Integer,String> hashNodes = new TreeMap<>(); hashNodes.put(1,"1.1.1.1"); has ......
一致性 算法 java

最近公共祖先 倍增算法

P3379 【模板】最近公共祖先(LCA) 点击查看代码 #include<bits/stdc++.h> using namespace std; const int N = 5e5 + 10; vector<int> g[N]; int dep[N], fa[N][22]; void dfs(in ......
祖先 算法

算法打卡|Day4 链表part02

Day4 链表part02 今日任务 ● 24. 两两交换链表中的节点 ● 19.删除链表的倒数第N个节点 ● 面试题 02.07. 链表相交 ● 142.环形链表II [TOC] Problem: 24. 两两交换链表中的节点 思路 1.迭代法就要注意画图!画图!还是画图!另外迭代的次序不要忘记, ......
算法 Day4 part Day 02

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

五、用go语言,假设你已经有了一个最坏情况下是线性时间的用于求解中位数的“黑箱”子程序。设计一个能在线性时间内解决任意顺序统计量的选择问题算法。 文心一言: 为了在线性时间内解决任意顺序统计量的选择问题,我们可以使用一个基于快速选择算法的方法。快速选择算法是基于快速排序的思想,可以在平均情况下以线性 ......
文心 导论 算法 chatgpt VS

算法刷题:图论(9.23,持续更)

目录基础知识有向图顶点类邻接表邻接矩阵入度、出度有向加权图无向图(双向图)图的遍历题目DAG所有可能的路径判断二分图dfs解法bfs解法 基础知识 点:顶点、邻接节点 边:有向边、无向边、加权边 度:入度、出度、无向边的度 环:环、自环(glist[i]中有i) 连通性:连通图、不连通 有向图 顶点 ......
算法 9.23 23

9.24算法

反转链表给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。 示例 1: 输入:head = [1,2,3,4,5]输出:[5,4,3,2,1]示例 2: 输入:head = [1,2]输出:[2,1]示例 3: 输入:head = []输出:[] 提示: 链表中节点的数目范围是 [0 ......
算法 9.24 24

代码随想录算法训练营-动态规划-2|62. 不同路径

62. 不同路径 1 class Solution: 2 def uniquePaths(self, m: int, n: int) -> int: 3 # 创建一个二维列表用于存储唯一路径数 4 dp = [[0] * n for _ in range(m)] 5 6 # 设置第一行和第一列的基本 ......
随想录 训练营 随想 算法 路径

【基本数据结构】队列

一、先进先出(FIFO) 队列是一种操作受限的线性表,只允许在队头进行删除操作,在队尾进行添加操作。向队尾添加元素叫做入队,从队头删除元素叫做出队。 适用场景:对于大部分资源有限的场景,当没有空闲资源时,基本上都可以通过队列来实现请求排队。比如,线程池、连接池、消息队列等。 二、队列的实现 队列可以 ......
数据结构 队列 结构 数据

基于Yolov2深度学习网络的车辆检测算法matlab仿真

1.算法运行效果图预览 2.算法运行软件版本 MATLAB2022A 3.算法理论概述 车辆检测是计算机视觉领域中的一个重要问题。它在自动驾驶、智能交通系统、交通监控以及车辆计数等应用场景中起着至关重要的作用。近年来,深度学习在图像识别领域取得了显著的成果,其中基于卷积神经网络(CNN)的车辆检测方 ......
学习网络 算法 深度 车辆 Yolov2

算法打卡|Day3 链表part01

Day3 链表part01 今日任务 ● 链表理论基础 ● 203.移除链表元素 ● 707.设计链表 ● 206.反转链表 [TOC] 链表理论基础 文章链接:https://programmercarl.com/%E9%93%BE%E8%A1%A8%E7%90%86%E8%AE%BA%E5%9F ......
算法 Day3 part Day 01

FreeRTOS 中的调度算法

FreeRTOS 中的调度算法 01 调度算法概述 调度算法的作用: 实时系统的调度需求 相应时间要求 任务优先级 资源利用率 FreeRTOS 调度算法的目标 提供可预测的任务调度 实现任务的优先级管理 最大化系统资源利用率 FreeRTOS 调度算法的分类: 抢占式调度算法 优先级抢占式调度算法 ......
算法 FreeRTOS

算法训练day18 LeetCode 513

算法训练day18 LeetCode 513.112.106 513.找树左下角的值 题目 513. 找树左下角的值 - 力扣(LeetCode) 题解 代码随想录 (programmercarl.com) 递归方式 单独数据存储最大深度,和此深度的结点值 递归后要注意回溯 class Soluti ......
算法 LeetCode day 513 18

9.23算法

删除链表的倒数第N个节点给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。 示例 1: 输入:head = [1,2,3,4,5], n = 2输出:[1,2,3,5]示例 2: 输入:head = [1], n = 1输出:[]示例 3: 输入:head = [1,2], n = ......
算法 9.23 23

网络拥塞控制算法总结-Chameleon自动调参工具

快手联合东南大学、清华大学在SIGCOMM'23提交了一篇poster:《Chameleon: Automatic and Adaptive Tuning for DCQCN Parameters in RDMA Networks》,描述了一种可自动调节DCQCN流控参数的工具,企图将复杂、枯燥而又 ......
算法 Chameleon 工具 网络

算法第一次作业

主要写一下自己写代码时所遇到的坑点,代码基本都是与网上的类似。 Problem A. 优美的立方质数 时间限制 1000 ms 内存限制 64 MB 题目描述 如果一个质数能被表示为三个不同的质数的和的形式,那么我们称它为立方质数。现在给你一个数n,判断它是不是立方质数。 输入数据 正整数n,n<= ......
算法 第一次

算法基础之高精度总结

高精度算法分类 分类:加、减、乘、除 其中加减乘都适用于两个数都是高精度,除法因为除数是高精度的话不好用整除的方法,所以除法时被除数是高精度,除数是整型。 高精度加减乘除的异同点 加和乘 相同点 需要从低位到高位处理 for(int i=stra.size()-1;i>=0;i--) c.push_ ......
高精 高精度 算法 基础

算法基础之快速排序

quick_sort方法中如果 i=l,j=r 会死循环的分析 示例代码 void quick_sort(int a[],int l,int r){ if(l>=r) return; int i=l,j=r; //此处设置会导致死循环 int x = num[(l+r)>>1]; while(i<j ......
算法 基础

算法基础之二分查找

原题链接 二分查找中的mid+1和mid-1的问题 二分查找中的边界问题处理不好很容易导致死循环和计算错误的问题,以题目 数的范围为例。 题目大意 ​ 二分查找重复数第一次出现的位置和最后一次出现的位置。 数学含义 ​ 第一次位置即 找到 一个长度最大的 >=X 区间的 左边界 ​ 最后一次位置即 ......
算法 基础

算法训练day8 LeetCode 344

算法训练day8: LeetCode 344.541.151.剑指offer05.58. 344.反转字符串 题目 344. 反转字符串 - 力扣(LeetCode) 题解 代码随想录 (programmercarl.com) class Solution { public: void revers ......
算法 LeetCode day8 day 344

算法题——定义一个方法自己实现 toBinaryString 方法的效果,将一个十进制整数转成字符串表示的二进制

用除基取余法,不断地除以基数(几进制,基数就是几)得到余数,直到商为0,再将余数倒着拼起来即可。 private static String toBinaryString(int number) { StringBuilder sb = new StringBuilder(); while (tru ......
方法 十进制 二进制 整数 字符串

常用算法模版

常用算法模版 今天学会在 https://godbolt.org/ 看汇编了。顺便卡了下常数,以及简单的(不是)压行。 快读 signed read() { signed num = 0, flag = 1; char ch = getchar(); for (; !isdigit(ch); ch ......
算法 模版 常用

算法题——实现类似parseInt的方法

Scanner sc = new Scanner(System.in);String str = "";while(true){ System.out.println("请输入"); String str1 = sc.nextLine(); if(str1.length() < 1 || str1. ......
算法 parseInt 方法

消息队列中,如何保证消息的顺序性?

本文选自:advanced-java 作者:yanglbme 问:如何保证消息的顺序性? 面试官心理分析 其实这个也是用 MQ 的时候必问的话题,第一看看你了不了解顺序这个事儿?第二看看你有没有办法保证消息是有顺序的?这是生产系统中常见的问题。 面试题剖析 我举个例子,我们以前做过一个 mysql ......
消息 队列 顺序