算法programing dynamic动态
java中使用JNA调用C/C++动态链接库中的函数
目录C++部分创建动态库项目JAVA部分pom依赖工程结构测试类jna 提供C与JAVA数据类型映射参考 C++部分 创建动态库项目 注意:动态库中的头文件,必须要将需要导出的函数包裹在extern "C" {}中,否者在使用侧java工程中,就无法加载并使用 JAVA部分 pom依赖 <depen ......
算法训练day10 LeetCode 232
算法训练day10: LeetCode 232.225. 232.用栈实现队列 题目 232. 用栈实现队列 - 力扣(LeetCode) 题解 代码随想录 (programmercarl.com) class MyQueue { public: stack<int> stIn; stack<int ......
【算法】如何获取一个数组的全排列?
问题描述 给定一个任意数组,如何获得数组的全排列,例如[1,2,3]的全排列数组为[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,2,1],[3,1,2]],即包含所有排列结果的长度为 \(A_{n}^{n}\) 的数组。 算法 function permute(arr) { ......
暗通道去雾算法优化
1、前言 传统去雾算法暗通道先验去雾算法是比较经典算法。 2、原理 2.1、暗通道 暗通道先验来源是作者通过几千张图像统计发现,即在绝大多数非天空的局部区域里,某一些像素总会有至少一个颜色通道具有很低的值,也就是说该区域光强是一个很小的值。 对于任何输入图像\(J\),其暗通道数学表达式如下: \[ ......
[8]-代码随想录算法训练营-day9-字符串-part2
代码随想录算法训练营第九天|字符串-part2 1.Leecode 28. 找出字符串中第一个匹配项的下标 题目 https://leetcode.cn/problems/find-the-index-of-the-first-occurrence-in-a-string/ 思路 暴力for循环 刷 ......
[8]-代码随想录算法训练营-day8-KMP算法
代码随想录训练营-KMP算法学习 1.基础概念 前缀 包含首字母,不包含尾字母的所有子串 后缀 包含尾字母,不包含首字母的所有子串 最长相等前后缀 罗列模式串中所有字符串的前后缀 确定最长相等的前后缀 如何找前后缀: 模式串为aabaaf 则其前缀有:a、aa、aab 、aaba、 aabaa 则其 ......
[7]-代码随想录算法训练营-day8-字符串-part1
代码随想录算法训练营第八天|数组字符串-part1 1.Leecode 344. 反转字符串 题目 https://leetcode.cn/problems/reverse-string/ 思路 刷随想录后想法 双指针,用swap 实现困难 无 实现代码 class Solution { publi ......
CF70D Professor's task 题解 & 动态凸包板子
CF70D Professor's task 题解 前言 此篇题解用的是 \(Andrew\),不想看这种做法的可以绕道。 题意 动态凸包板子题。 维护动态凸包。两种操作,加一个点或查询一个点是否在凸包内。 题解 首先你得会静态二维凸包。 维护二维凸包的方法挺多的,比如什么 \(Andrew\) 算 ......
代码随想录算法训练营-回溯算法-2|55. 跳跃游戏、45. 跳跃游戏 II、1005. K 次取反后最大化的数组和
55. 跳跃游戏 1. 跳跃的覆盖范围。这个问题就转化为跳跃覆盖范围究竟可不可以覆盖到终点! 2. 贪心算法局部最优解:每次取最大跳跃步数(取最大覆盖范围),整体最优解:最后得到整体最大覆盖范围,看是否能到终点。 时间复杂度: O(n) 空间复杂度: O(1) 1 class Solution: 2 ......
查找范围动态变化
问题:查找范围在不同列,如何使用一个公式下拉完成 函数公式解决: =VLOOKUP(E3,OFFSET(AM$1:AN$17,,MATCH("高"&LEFT(B3)&"赋分",AN$1:AQ$1,)),2,) 使用Offset函数,以AM1:AN17为起点,向下不偏移,向右偏移由B列最左的汉字决定。 ......
算法:字典树 (转自九章算法)
https://www.jiuzhang.com/solution/implement-trie/ 算法:字典树 思路: 题目要求实现一个Trie,包含插入、查找和查找前缀三个方法。 Trie树也称字典树,因为其效率很高,所以在在字符串查找、前缀匹配等中应用很广泛,其高效率是以空间为代价的。 原理: ......
Programming abstractions in C阅读笔记:p161-p165
《Programming Abstractions In C》学习第57天,开始第4章“Introduction to Recursion”的学习,p161-p165,总结如下。 一、技术总结 1.recursion vs stepwise refinement 答:p164, The strate ......
基于自适应运动补偿的双向运动估计算法matlab仿真
1.算法运行效果图预览 2.算法运行软件版本 matlab2022a 3.算法理论概述 基于自适应运动补偿的双向运动估计算法是一种用于视频或图像序列中运动估计的方法。它通过估计前向运动和反向运动场来提高运动估计的精度。该算法采用自适应运动补偿的策略,对预测图像和参考图像之间的像素块进行比较,从而获得 ......
基于帧差法和形态学处理的行驶车辆跟踪算法matlab仿真
1.算法理论概述 车辆跟踪是计算机视觉领域中的一个重要问题,它在交通监控、智能交通系统、自动驾驶等领域具有广泛的应用。本文介绍一种基于帧差法和形态学处理的车辆跟踪算法,通过对视频帧进行帧差法处理,检测出运动目标(车辆),然后利用形态学处理对目标进行形态学运算,实现车辆的跟踪和轨迹的提取。该算法具有较 ......
机器学习算法原理实现——xgboost,核心是加入了正则化和损失函数二阶泰勒展开
先看总的图: 本质上就是在传统gbdt的决策树基础上加入了正则化防止过拟合,以及为了让损失函数求解更方便,加入了泰勒展开,这样计算损失函数更方便了(除了决策树代码有差别,其他都是gbdt一样,本文仅实现xgboost的决策树)。如下: 再解释各个步骤: 。。。 让gpt来汇总下: 好了,我们直接写下 ......
2018-2019 ACM-ICPC Brazil Subregional Programming Contest
B. Marbles 题解 显然如果存在棋子位于\((x,x)\),那么一定先手必胜 容易发现必败态位于\((1, 2)\)和\((2,1)\),那么我们可以通过\(sg\)函数暴力打表得到 并且玩家一定不会将棋子移动至\((0,i),(i,0),(i,i)\)这三种情况上,因为谁移动到这些位置,对 ......
基础二分算法:整数二分、浮点二分
1、整数二分 以acwing 789为例,题目要求如下: 第一行输入整数n和q,表示数组长度和询问个数。 第二行输入数组,包含n个整数。 接下来q行,每一行一个整数k,表示一个问询元素。 要求输出q行,每行包含两个整数,表示所求元素的起始位置和终止位置。 如果数组中不存在该元素,则返回 -1 -1。 ......
算法刷题:DP专题(9.16,持续更)
算法刷题系列上期: 递归、栈/队列、树、回溯、DP(8.29) 数组指针、前缀和/差分/树状数组、滑窗/单调队列/滚动哈希、二分(8.13) 链表题(8.29) 目录动态规划基础状态状态转移函数题目三角形最小路径和 动态规划基础 状态 状态转移函数 题目 三角形最小路径和 时间:3ms 击败 77% ......
基于间隔密度的概念漂移检测算法mdm-DDM
概念漂移 概念漂移是数据流挖掘领域中一个重要的研究点。传统的机器学习算法在操作时通常假设数据是静态的,其数据分布不会随着时间发生变化。然而对于真实的数据流来说,由于数据流天生的时间性,到达的数据的分布可能会随着时间的推移不断改变。这使得传统的批处理模型不适合对数据流的进行挖掘分析,模型更是需要有 ......
基础算法:快速排序、归并排序
1、快速排序 #include <iostream> using namespace std; const int N = 1e5 + 10; int n, q[N]; void qksort(int q[], int l, int r) { if (l >= r) return; int x = ......
代码随想录算法训练营第十天
代码随想录算法训练营第十天 | LeetCode 20(有效的括号) LeetCode 1047(删除字符串中的所有相邻重复项) LeetCode 150(逆波兰表达式求值) 20:有效的括号 LeetCode 20(有效的括号) 方法一 import java.util.Stack; class ......
tortoise-orm 使用雪花算法生成主键ID
import time from tortoise import Tortoise, fields, run_async from tortoise.models import Model from typing import Any class Snowflake: def __init__(se ......
【代码随想录算法训练营第3天】704. 二分查找、27. 移除元素
Day1-数组2023.5.20 2023.9.14二刷 Leetcode704 二分查找 给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。 初解 已经不记得二分查找了,遍历找\ ......
机器学习算法原理实现——gbdt
前面的文章介绍了决策树的实现,我们基于之前决策树的实现(https://www.cnblogs.com/bonelee/p/17691555.html),写一个gbdt: import numpy as np from sklearn.model_selection import train_tes ......
lecode算法题 小总结
. . . . . . . 1 打印9x9 乘法表 # python版 for i in range(1, 10): for k in range(1, i + 1): print(f'{i}X{k} \t', end='') print('\n') # c版 #include <stdio.h> ......
2020-2021 ACM-ICPC Brazil Subregional Programming Contest
A. Sticker Album 你想要得到\(n\)张贴纸,每包礼物中等概率出现 \([A,B]\)范围内数量的贴纸,求需要买多少包礼物才能至少获得\(n\)张贴纸的期望次数 \(1 \leq n \leq 10^6,0\leq A,B\leq 10^6\) 题解:期望DP 我们考虑从后往前进行\ ......
2022 International Collegiate Programming Contest, Jinan Site MKAEDGC
2022 International Collegiate Programming Contest, Jinan Site 目录2022 International Collegiate Programming Contest, Jinan SiteVP概况M - Best Carry Player ......