算法 随想录 柠檬水 队列

高精度算法

1.高精度加法 这个比较简单一些,主要是考虑满10进位的问题,直接写代码就可以。(若数字很大的话,不太好运算,所以将数字转化成字符串的形式输入) #include <iostream> using namespace std; const int N = 100010; int A[N], B[N] ......
高精 高精度 算法

KMP模式匹配算法

例题展示 例题解决 ......
算法 模式 KMP

10.14算法

给你一个整数数组 nums ,设计算法来打乱一个没有重复元素的数组。打乱后,数组的所有排列应该是 等可能 的。 实现 Solution class: Solution(int[] nums) 使用整数数组 nums 初始化对象int[] reset() 重设数组到它的初始状态并返回int[] shu ......
算法 10.14 10 14

数据结构之队列(优先队列)

概念 优先队列(Priority Queue)为一种不必遵守队列特性FIFO(先进先出)的有序线性表,其中每个元素都赋予一个优先级(Priority),加入元素时可任意加入,但有最高优先级者(Highest Priority Out First HPOF)则最先输出。 Java 在Java中,Pri ......
队列 数据结构 结构 数据

数据结构之队列(双向队列)

概念 双向队列(Double-ends Queues简称Dequeue)是一种前后2端都可以添加数据(入队)、移除(出队)数据的有序线性表。 特点 双向队列(Deque,全名Double Ended Queue)是一种具有两个指针的线性表,允许从两端都可以进行插入和删除操作即双向队列可以在任意一端进 ......
队列 数据结构 双向 结构 数据

算法题解——多数元素

题目 给定一个大小为 n 的数组 nums ,返回其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。 你可以假设数组是非空的,并且给定的数组总是存在多数元素。 示例 1: 输入:nums = [3,2,3] 输出:3 示例 2: 输入:nums = [2,2,1,1,1,2 ......
题解 算法 元素

算法题解——轮转数组

题目 给定一个整数数组 nums,将数组中的元素向右轮转 k 个位置,其中 k 是非负数。 示例 1: 输入: nums = [1,2,3,4,5,6,7], k = 3 输出: [5,6,7,1,2,3,4] 解释: 向右轮转 1 步: [7,1,2,3,4,5,6] 向右轮转 2 步: [6,7 ......
题解 数组 算法

1.2算法和算法评价

1.2.1算法的基本概念 知识总览 什么事算法 程序=数据结构+算法 算法(Algorithm〉是对特定问题求解步骤的一种描述,它是指令的有限序列,其中的每条指令表示一个或多个操作 算法的特性 有穷性。一个算法必须总在执行有穷步之后结束,且每一步都可在有穷时间内完成。注:算法必须是有穷的,而程序可以 ......
算法 1.2

基础算法

排序算法 排序算法(英语:Sorting algorithm):是一种将一组特定的数据按某种顺序进行排列的算法。排序算法多种多样,性质也大多不同。 稳定性:稳定性是指相等的元素经过排序之后相对顺序是否发生了改变。 拥有稳定性这一特性的算法会让原本有相等键值的纪录维持相对次序,即如果一个排序算法是稳定 ......
算法 基础

ARMA-EGARCH模型、集成预测算法对SPX实际波动率进行预测|附代码数据

全文下载链接:http://tecdat.cn/?p=12174 最近我们被客户要求撰写关于ARMA-EGARCH的研究报告,包括一些图形和统计输出。 本文比较了几个时间序列模型,以预测SP500指数的每日实际波动率。基准是SPX日收益序列的ARMA-EGARCH模型。将其与GARCH模型进行比较 ......
算法 ARMA-EGARCH 模型 实际 代码

Python:利用math和random模块实现RSA加密算法

实验五报告: 利用math和random模块实现RSA加密算法 实验目标 本实验的主要目标是熟悉RSA(Rivest-Shamir-Adleman)密码算法的编写,其中包括求最大公因子、模逆的扩展欧几里得算法、素性检测算法、生成大素数、生成RSA公私钥对以及RSA加密和解密。 实验要求 通过编写Py ......
算法 模块 Python random math

算法学习笔记(3.1): ST算法

ST表 在RMQ(区间最值)问题中,著名的ST算法就是倍增的产物。ST算法可以在 \(O(n \log n)\) 的时间复杂度能预处理后,以 \(O(1)\) 的复杂度在线回答区间 [l, r] 内的最值。 当然,ST表不支持动态修改,如果需要动态修改,线段树是一种良好的解决方案,是 \(O(n)\ ......
算法 笔记 3.1

软考-算法与数据结构1

一、数组和稀疏矩阵 1、 数组 一维数组a[i]:a+i*len 二维数组a[i][j]: 在[0···m][0···n] 按行存储:base+(i*n+j)*len 按列存储:base+(j*m+i)*len 在[1···m][1···n] 按行存储:base+((i-1)*n+(j-1))*le ......
数据结构 算法 结构 数据

浅谈区间覆盖离线算法——pq差分

前置知识:STL 或者手打优先队列(堆),`vector`。 这里为了代码方便,后面的代码均使用 STL 优先队列,想看手打堆的话可以看别的巨佬的博客然后去 [模板](https://www.luogu.com.cn/problem/P3378) 或者 Acwing 练手。 该算法可以运用优先队列, ......
区间 算法

算法修养--A*寻路算法

本文从广度优先算法为切入点,介绍了广度优先算法、Dijkstra算法、最佳优先搜索以及A*寻路算法, 并展示核心算法代码实现。 ......
算法 修养

Exception in thread "main" java.security.InvalidKeyException: Wrong key size问题的解决(DES加密算法遇到)

问题描述 在Java里面使用DES加密算法,然后就爆出这个错误: 问题解决 换用了另外一种加密解密的函数:SecretKeySpec; 即将原来的这种: 换成了这种: 我是觉得使用DES加密算法时,它一直显示key的字节长度不对,就想着换一种表述方式,又看到了别的友友的经验分享,就换成这样试了试(直 ......

逆波兰表达式与迷宫算法

中项表达式是人类的算术思路,逆波兰表达式是机器结合栈结构完成算式解析的最佳结构。 文章链接:https://zhuanlan.zhihu.com/p/357982040 迷宫算法 文章链接:https://blog.csdn.net/m0_53157173/article/details/11448 ......
表达式 迷宫 算法

深入理解MySQL中的Join算法

在数据库处理中,Join操作是最基本且最重要的操作之一,它能将不同的表连接起来,实现对数据集的更深层次分析 ......
算法 MySQL Join

文心一言 VS 讯飞星火 VS chatgpt (112)-- 算法导论10.2 3题

三、用go语言,用一个单链表L实现一个队列。要求操作 ENQUEUE 和 DEQUEUE 的运行时间仍为O(1)。 文心一言: 在 Go 语言中,使用单链表实现队列的操作,包括入队(ENQUEUE)和出队(DEQUEUE),并保持操作的时间复杂度为 O(1),需要利用两个指针,一个指向队头,另一个指 ......
文心 导论 算法 chatgpt VS

一个需要感性理解的树上算法 学习心得

题目描述 你现在有一颗 \(n\) 个点的树和 \(m\) 条由 \(x_i\) 到 \(y_i\) ( \(1 \le x_i\ ,\ y_i \le n\) ) 的简单可重复路径。求有多少种方案选路径,使路径集的大小为 \(k\) ,且所有路径至少有一个公共点。对 \(10^9+7\) 取模。 ......
算法 感性 心得

《Mastering the FreeRTOS Real Time Kernel》读书笔记(3)队列管理

4.队列管理 队列,在一些系统中被称为消息队列,可以理解为信息中转站。是任务和任务,任务和中断之间可以互相读和写的一个共享空间。 4.2 队列的特征 存储数据 队列本质上是一个先进先出的缓冲区(FIFO),所以可以存储一定容量的数据。 有两种方式可以实现FIFO队列: 1.将发送给队列的数据复制到队 ......
队列 Mastering FreeRTOS 笔记 Kernel

【离线算法】- 莫队

莫队 简介 莫队是可以支持多次询问区间 \([l,r]\) 的信息的 离线 算法。通过将询问范围以块长为 \(\sqrt n\) 分块后按端点所属分块排序的方式优化复杂度。 普通莫队 定义 普通莫队针对的是序列上的区间询问。常见形式为:对于一个长度为 \(n\) 的序列,提出 \(m\) 次询问,每 ......
算法

10.13算法

你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。 给定一个代表每个房屋存放金额的非负整数数组,计算你 不触动警报装置的情况下 ,一夜之内能够偷窃到的最高金额。 示例 ......
算法 10.13 10 13

算法学习笔记(30):Kruskal 重构树

Kruskal 重构树 这是一种用于处理与最大/最小边权相关的一个数据结构。 其与 kruskal 做最小生成树的过程是类似的,我们考虑其过程: 按边权排序,利用并查集维护连通性,进行合并。 如果我们在合并时,新建一个节点,其权值为当前处理的边的权值,并将合并的两个节点都连向新建的节点,那么就可以得 ......
算法 Kruskal 笔记 30

代码随想录第二天|977.有序数组的平方 ,209.长度最小的子数组 ,59.螺旋矩阵II

977 有序数组的平方 题目链接:https://leetcode.cn/problems/squares-of-a-sorted-array/ 思路:双指针(实际是三指针),两个找最大值,一个确定平方后的位置。 209.长度最小的子数组 题目链接:https://leetcode.cn/probl ......
数组 随想录 矩阵 螺旋 随想

算法训练day30 LeetCode93.78.90

算法训练day30 LeetCode93.78.90 93.复原IP地址 题目 93. 复原 IP 地址 - 力扣(LeetCode) 题解 代码随想录 (programmercarl.com) 使用'.'切割字符串、结束条件为字符串中有三个'.'、同时要确定字符串符合的条件 长度为不为1时,首字符 ......
算法 LeetCode day 30 93

Redisson使用延时队列

延时队列 在开发中,有时需要使用延时队列。 比如,订单15分钟内未支付自动取消。 jdk延时队列 如果使用 jdk自带的延时队列,那么服务器挂了或者重启时,延时队列里的数据就会失效,可用性比较差。 Redisson延时队列 可以使用Redisson的延时队列。 Redisson的配置,详情见:htt ......
队列 Redisson

队列入门

public class QueueTest { public static void main(String[] args) { Queue<Integer> queue = new LinkedList<>(); queue.add(10); queue.add(12); // 获取第一个元素 ......
队列

Brouvka算法

#include<bits/stdc++.h> using namespace std; const int maxn=1e5+50,maxm=2e5+5; const int MaxN = 5000 + 5, MaxM = 200000 + 5; int N, M; int U[MaxM], V[ ......
算法 Brouvka

代码随想录训练营的第二天(Python)| 977.有序数组的平方、209.长度最小的子数组

977.有序数组的平方 暴力求解(O(n+logn)) class Solution: def sortedSquares(self, nums: List[int]) -> List[int]: return sorted(i**2 for i in nums) 双指针(O(n)) 由于列表是单调 ......
数组 随想录 训练营 随想 长度