算法 随想录 柠檬水 队列

深度优先算法

一、例子 提问:输入一个数字n,输出1~n的全排列。 首先,将全排列比作小盒子和扑克牌 将数字比作扑克牌,我们有1号,2号,3号扑克牌和1号2号3号3个盒子。每个盒子只能放置一个扑克牌,实现全排列。那我们如何往小盒子中放入扑克牌。每个小盒子都可能放1号、2号或者3号扑克牌,这都需要一一尝试,这里一个 ......
算法 深度

牛牛小数输出的算法

背景 输入一些内容,要求输出格式为两位随机数。 最开始思路: 1.读进来字符串,判断是否有'.' 2.根据'.'判断是否需要补0或者异常处理 3.以'.'为中心分为左右两段,在处理完成后进行拼接 总结: 1.python应该用python的思维模式去编程,不应该重复造轮子或用C++的编程思维 2.写 ......
小数 算法

编程随想曲周刊(第51期)

这里记录每周的所见所闻,周日发布。点击阅读原文可以直接访问文章链接。 文章 从现在起,值得提醒自己做的20件小事 90岁王蒙,永恒的青春 成都女童被恶犬咬伤事件:小孩丢肾的概率非常高 33岁失业,未来的路在何方(苛求过程、释怀结果) 十年经验等于零 从现在起,你要停止对自己做的30件事 等到30岁后 ......
随想曲 随想 周刊

临界区算法:Peterson与面包店算法

目录临界区算法:Peterson与面包店算法Peterson算法面包店算法其他方法关中断硬件原子指令法 临界区算法:Peterson与面包店算法 读写信号量的代码一定是临界区,只能有一个线程进入执行。 临界区算法需要满足: 互斥进入:只有一个线程能进入临界区执行代码。 有空让进:没有线程在临界区执行 ......
算法 面包店 面包 Peterson

10.22算法

有效的括号给定一个只包括 '(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。每个右括号都有一个对应的相同类型的左括号。 示例 1: 输入:s = "()"输出:true示例 2: 输 ......
算法 10.22 10 22

提高组算法-图论学习笔记

## 2023-10-21 第一节 基本概念 一、什么是图:点用边连起来就叫做图,是一种数据结构。 二、图的一些定义和概念 1、有向图:图的边有方向,只能按箭头方向从一点到另一点。 2、无向图:图的边没有方向,可以双向。 3、结点的度:无向图中与结点相连的边的数目。 4、完全图:一个 n 阶的完全无 ......
算法 笔记

最小生成树 PRIM算法 - 附可运行代码

学习的时候,觉得这篇资料蛮好的: https://www.cnblogs.com/JayShao/p/12381830.html 然后这篇文章比较新颖,自觉比较适合写代码的理解: https://www.geeksforgeeks.org/kruskals-minimum-spanning-tree ......
算法 代码 PRIM

算法刷题记录-二分查找

算法刷题记录-二分查找 二分查找 给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。 示例 1: 输入: nums = [-1,0,3,5,9,12], target = 9 输出 ......
算法

js逆向·找到登录时目标网站的加密算法的几种方式

js逆向·找到登录时目标网站的加密算法的几种方式 为什么要去找到目标网站的加密密码方法: 为了要把我们的payload正确的带入目标网站的服务器进行逻辑验证,那么就需要知道对方使用的什么加密或者编码规则来处理数据的,比如说我们输入的密码被base64编码了,然后发送给后端,后端会进行解码过后再带入逻 ......
算法 目标 方式 网站 183

算法篇---java算法应用

算法篇 java算法应用 算法应用之百钱买白鸡 (程序员副业--编程学习--业务交流--公众号: 匠心程序定制) 案列说明:主要内容是:公鸡5元一只,母鸡3元一只,小鸡1元三只,问100元怎样可以买100鸡? 思想:想要实现此算法,只要明白各种条件的关系即可,而且知道公鸡最多买20只,母鸡最多买33 ......
算法 java

Floyd算法

Floyd算法 正如我们所知道的,Floyd算法用于求最短路径。Floyd算法可以说是Warshall算法的扩展,三个for循环就可以解决问题,所以它的时间复杂度为O(n^3)。 Floyd算法的基本思想如下:从任意节点A到任意节点B的最短路径不外乎2种可能,1是直接从A到B,2是从A经过若干个节点 ......
算法 Floyd

1.NCC算法实现及其优化[基础实现篇]

NCC算法实现及其优化 本文将集中探讨一种实现相对简单,效果较好的模板匹配算法(NCC) \[R(x,y)= \frac{ \sum_{x',y'} (T'(x',y') \cdot I'(x+x',y+y')) }{ \sqrt{\sum_{x',y'}T'(x',y')^2 \cdot \sum ......
算法 基础 NCC

Matching Network算法概述

什么是Matching Network 1. 论文地址:Matching Networks for One Shot Learning 2. 简介:基于Metric Learning部分思想,使用外部记忆来增强网络,提高网络的学习能力。 3. 创新点 借鉴了注意力和外部记忆方面的经验来搭建网络 基于 ......
算法 Matching Network

代码随想训练营第十天(Python)| 232.用栈实现队列 、 225. 用队列实现栈

232.用栈实现队列 class MyQueue: def __init__(self): self.stack_in = list() self.stack_out = list() def push(self, x: int) -> None: self.stack_in.append(x) d ......
队列 训练营 随想 代码 Python

棋盘覆盖——分治算法的典例

问题描述 在一个\({2^k} \times {2^k}(K \geqslant 0)\) 个方格组成的棋盘中,恰有一个方格与其他方格不同,称该方格为特殊方格。 棋盘覆盖问题要求用图所示的4种不同形状的\(L\)型骨牌覆盖给定棋盘上除特殊方格以外的所有方格,且任何2个\(L\)型骨牌不得重叠覆盖。 ......
棋盘 算法

贪心算法实现

贪心算法 顾名思义,贪心算法总是作出在当前看来最好的选择。也就是说贪心算法并不从整体最优考虑,它所作出的选择只是在某种意义上的局部最优选择。当然,希望贪心算法得到的最终结果也是整体最优的。虽然贪心算法不能对所有问题都得到整体最优解,但对许多问题它能产生整体最优解。如单源最短路经问题,最小生成树问题等 ......
算法

算法训练day39LeetCode738.968.

算法训练day39LeetCode738.968. 738.单调递增的数字 题目 738. 单调递增的数字 - 力扣(LeetCode) 题解 代码随想录 (programmercarl.com) class Solution { public: int monotoneIncreasingDigi ......
算法 LeetCode day 738 968

部分算法总结

小部分算法总结 部分题目请见: https://github.com/ZhangFirst1/Algorithm-problem-code 异或运算 a^= b相当于a=a^b,将十进制数字转化为二进制进行运算,相同为0,相异为1,0和任何数异或运算都是原来的那个数。 可以用来判断数组中哪个数字只出 ......
算法 部分

10.21算法

颠倒二进制位颠倒给定的 32 位无符号整数的二进制位。 提示: 请注意,在某些语言(如 Java)中,没有无符号整数类型。在这种情况下,输入和输出都将被指定为有符号整数类型,并且不应影响您的实现,因为无论整数是有符号的还是无符号的,其内部的二进制表示形式都是相同的。在 Java 中,编译器使用二进制 ......
算法 10.21 10 21

常见密码学算法简介

1. 常见对称加解密算法 对称加密算法是一种加密算法,使用相同的密钥来加密和解密数据。这些算法在保护数据安全性方面起着重要作用。下面是一些常用的对称加密算法的介绍: 1.1 Advanced Encryption Standard (AES) 简介: AES 是一种高级加密标准,用于保护敏感数据。它 ......
密码学 算法 常见 密码 简介

协同过滤推荐算法总结

推荐算法具有非常多的应用场景和商业价值,因此对推荐算法值得好好研究。推荐算法种类很多,但是目前应用最广泛的应该是协同过滤类别的推荐算法,本文就对协同过滤类别的推荐算法做一个概括总结,后续也会对一些典型的协同过滤推荐算法做原理总结。 1. 推荐算法概述 推荐算法是非常古老的,在机器学习还没有兴起的时候 ......
算法

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

二、用go语言,对一组同构对象用单数组表示法实现,写出过程ALLOCATE-OBJECT和FREE-OBJECT。 文心一言: 在Go语言中,我们通常使用指针和结构体来表示和操作复杂的数据结构。对于一组同构对象,我们可以使用一个数组来存储它们的指针,每个指针指向一个对象。下面是使用Go语言实现ALL ......
文心 导论 算法 chatgpt VS

算法训练day38 LeetCode435.763.56.

算法训练day38 LeetCode435.763.56. 435.无重叠区间 题目 435. 无重叠区间 - 力扣(LeetCode) 题解 代码随想录 (programmercarl.com) 首先按左边界排列范围 再将长的重叠区间去除 并记录去除个数 class Solution { publ ......
算法 LeetCode day 435 763

遗传算法 (解决TSP旅行商问题) 附Python代码

1.什么是TSP旅行商问题? 1.1 问题本质 旅行商问题是一个经典的组合优化问题。 问题实质是一个带权完全无向图,找一个权值最小的Hamilton回路。( 即点到点的最优路径问题 ) 早期的研究者使用精确算法求解该问题,常用的方法包括:分枝定界法、线性规划法、动态规划法等。但是,随着问题规模的增大 ......
算法 代码 Python 问题 TSP

快速排序算法模板+内置函数

思想: 确定分界点 调整区间 ,小于分界点的在左边区间,大于分界点在右边区间。 递归处理左右两边。 void quick_sort(int q[], int l, int r) { if (l >= r) return; int i = l - 1, j = r + 1, x = q[l + r > ......
算法 函数 模板

进程调度算法--先来先服务算法-短进程优先算法

常用的调度算法 先来先服务调度算法(FCFS):先到达先执行,非抢占式的,同时就绪时仲裁规则是随机的。 短进程优先调度算法(SPF):从就绪队列中找运行时间最短的进程,非抢占式的,仲裁规则是按照时间先后顺序或随机方式。 先来先服务调度算法(FCFS) #include<stdio.h>#includ ......
算法 进程

Redis学习之消息队列

消息队列 JDK阻塞队列可能存在哪些问题? 服务器宕机,内存队列中的订单信息全部丢失 线程处理错误,已取出单个订单信息,但没有入库 受单JVM内存限制 所以,我们需要一个独立的队列来存管订单信息,也就是消息队列。 介绍 存放消息的队列。一种开发中常用的中间件 最简单的消息队列模型包括3个角色: 消息 ......
队列 消息 Redis

算法学习笔记(31): 李超线段树

李超线段树是一种按照值域维护一次函数最值的数据结构,其核心在于一次函数和值域的双单调性。 如果预先对于值域离散也可以维护其最值。 也就是说只要满足时一次函数,以及下标的单调性都可以利用李超线段树维护。 李超线段树就是利用线段树来维护一次函数的最值,每一个结点对应了一个区间 \([l, r]\)。 我 ......
线段 算法 笔记 31

它让你1小时精通RabbitMQ消息队列、且能扛高并发

支持.Net Core(2.0及以上)与.Net Framework(4.5及以上) 本文所述方案近期被江苏省某亿级数据量+高并发的政府"物联网"项目采用,获得圆满成功!! 【目录】 发送消息、获取消息、使用消息 延时队列 & 死信队列 展望 RabbitMQ作为一款主流的消息队列工具早已广受欢迎。 ......
队列 RabbitMQ 消息 小时

队列

问:给定一串数字{0, 6, 3, 1, 7, 5, 8, 9, 2, 4},把第一个数字出队,将第二个数字放到最后;把第三个数字出队,将第四个数字放到最后;把第五个数字出队,第六个数字放到最后。以此类推,知道没有数字量,打印出所有删除的数字。 #include <stdio.h> int main ......
队列