算法 随想录 柠檬水 队列

[代码随想录]Day29-贪心算法part03

## 题目:[1005.K次取反后最大化的数组和](https://leetcode.cn/problems/maximize-sum-of-array-after-k-negations/) ### 思路: 思路是: 1. 先把负数从小到大变成正数(即绝对值由大到小) 2. 如果还需要变化(k>0 ......
随想录 随想 算法 代码 part

深入探索OCR技术:前沿算法与工业级部署方案揭秘

# 深入探索OCR技术:前沿算法与工业级部署方案揭秘 ![](https://ai-studio-static-online.cdn.bcebos.com/72b2077605dd49b78f7f647d6821d10231f6bc52d7ed463da451a6a0bd1fc5ff) *注:以上图 ......
算法 方案 工业 技术 OCR

突破边界:文本检测算法的革新与应用前景

# 突破边界:文本检测算法的革新与应用前景 # 1.文本检测理论篇(文本检测方法介绍) 文本检测任务是找出图像或视频中的文字位置。不同于目标检测任务,`目标检测不仅要解决定位问题,还要解决目标分类问题`。 文本在图像中的表现形式可以视为一种‘目标‘,通用的目标检测的方法也适用于文本检测,从任务本身上 ......
边界 算法 前景 文本

【校招VIP】前端算法考察之排序

考点介绍: 不同的场景中,不同的排序算法执行效率不同。 稳定:冒泡、插入、归并 不稳定:选择、快速、堆排序、希尔排序 一、考点题目 1、使用js实现数组的快速排序 解答:快速排序使用了冒泡+分治的思路。 每轮从数组中取出一个数作为基准;在排序过程中,小于或等于基准数的全部放到基准的左边,大于基准的全 ......
前端 算法 VIP

【校招VIP】算法考点之堆排

考点介绍: 排序算法属于数据结构和算法的基础内容,并且也是大厂笔试中的高频考点。 堆排序是使用一棵树存储序列这个课树只保证跟节点是这棵树中的最小值,但并不保证其他节点是按顺序的。因此他的排序是每次从堆中取得堆顶,取得 n 次就得到了个数为 n 的有序序列。 一、考点试题 1.堆排序的原理 解答:1、 ......
考点 算法 VIP

【算法】用c#实现计算方法中的经典降幂优化策略,减少计算复杂度

对于给定的数组[x1,x2,x3,…,xn],计算幂的累积:x1^(x2^(x3^(…^xn))的最后一位(十进制)数字。 例如,对于数组[3,4,2],您的代码应该返回1,因为3^(4^2)=3^16=43046721。 结果的增长得快得令人难以置信。例如,9^(9^9)有超过3.69亿个数字。你 ......
降幂 复杂度 算法 策略 方法

二分算法

1. 将两个集合合并 2. 询问两个元素是否在一个集合当中 基本原理:每个集合用一棵树表示,树根的编号就是整个集合的编号。每个节点储存它的父节点,p[x]表示x的父节点 判断树根(属于那个集合)`if (p[x] == x)` 求x的集合编号:`while(p[x] != x) x = p[x];` ......
算法

堆(优先队列)

又名优先队列 堆由完全二叉树构成,其每个节点都有一个键值,且每个节点的键值都大于等于/小于等于其父亲的键值 每个节点的键值都大于等于其父亲键值的堆叫做小根堆,否则叫做大根堆。STL 中的 `priority_queue` 其实就是一个大根堆 我们模拟的是**小根堆**,下标从1开始 1是根节点,令$ ......
队列

Bresenham画直线算法(待完成)

[TOC] Bresenham算法是图形学非常经典的光栅线生成算法,可用于显示直线、圆以及其他曲线。这里通过算法画直线过程,了解其工作原理。 # 问题描述 已知线段2端点$(x_0, y_0) (x_e, y_e)$,屏幕上画出该直线段。 由于屏幕是通过像素点显示的,只能通过像素点所在的整数坐标近似 ......
算法 直线 Bresenham

二叉树层序遍历队列实现

参考:二叉树的层序遍历(两种方法实现)_askunix_hjh的博客-CSDN博客 题解 | #求二叉树的层序遍历#_牛客博客 (nowcoder.net) 题解二:BFS(迭代)主要思路:广度优先 8.27 用到的思路是广度优先,循环,不是递归 ......
队列

hdu:Rescue(bfs+优先队列)

Problem Description Angel was caught by the MOLIGPY! He was put in prison by Moligpy. The prison is described as a N * M (N, M 点击查看代码 ``` #include usi ......
队列 Rescue hdu bfs

[算法学习笔记][刷题笔记] 单调队列优化 dp

### 前置知识 · 单调队列 单调队列顾名思义,一般用于解决 **滑动RMQ**问题。它的原理非常简单。我们维护一个双端队列,这个双端队列 **只维护可能成为区间最值**的元素。 最基础的单调队列,例如滑动窗口。直接依据题意维护即可。 这里提供单调队列模板(STL deque 版) 单调队列模板( ......
笔记 队列 算法 dp

关于欧几里得算法与裴蜀定理的证明

### 前言: 因为某次考试订正 T4,用到了 exCRT,然后发现我和 lws 不会 exgcd…… 所以来把 gcd 到 exgcd 重新学一下,就写了这篇 trick。 ### 欧几里得算法: 求证: $$ \gcd(a,b)=\begin{cases} \gcd(b,a\bmod b) & ......
定理 算法

文心一言 VS 讯飞星火 VS chatgpt (82)-- 算法导论8.1 1题

# 一、如果用go语言,在一棵比较排序算法的决策树中,一个叶结点可能的最小深度是多少? ## 文心一言: 在一个排序决策树(如二叉搜索树)中,每个叶节点的最小深度等于输入数据中最大元素与最小元素之间的位距离。这是因为在最坏的情况下,每个比较都需要将最大元素向最小元素的路径移动,因此叶节点的最小深度就 ......
文心 导论 算法 chatgpt VS

13、从0到1实现SECS协议之优先级队列(SECS-I)

## 13、从0到1实现SECS协议之优先级队列(SECS-I) 逻辑和HSMS协议中的优先级队列一样,只不过存储的数据变了而已。 ### 1、并发安全的优先级队列 ```go package queue import ( "secs-gem/common" "secs-gem/secs/packe ......
优先级 队列 SECS SECS-I

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

这里记录每周的所见所闻,周日发布。点击阅读原文可以直接访问文章链接。 # 运维 1. [图解60个网络基础知识点](https://mp.weixin.qq.com/s/pk-PmmhDyfl9BNXOB7LP-g) # 编程 1. [Nginx反向代理技巧](https://mp.weixin.q ......
随想曲 随想 周刊

leetcode 题库994——bfs典型解法(队列+递归实现)

class Solution: def orangesRotting(self, grid: list[list[int]]) -> int: m,n=len(grid),len(grid[0]) queue,good=[],[] def bfs(queue,good,m,n,grid): time ......
解法 队列 题库 leetcode 典型

[算法学习笔记][刷题笔记] 2023/8/26&8/27 解题报告状压 dp

[题单](https://www.luogu.com.cn/training/334619#information) ### 状压 dp 状压 dp是一种非常暴力的算法,它直接记录不同的状态,通过状态进行转移。 状压 dp可以解决 NP 类问题。它的原理是暴力枚举每一种可能的状态。所以它的复杂度是指 ......
笔记 算法 2023 amp 26

深度-高考后的分层之战和人生算法破圈(转渤海小吏)

谈高考之前先大概想明白一个根本的问题,社会的层级细分下来可以搞出十几20层,简化来看可以简要分为以下三层。第一,上层高护城河生产资料和权利的所有者。二,中层小型生产资料所有者和有产打工人。三基层也就是无产者,然后我们根据上面三个阶层来看一下每个层级的最优解和想法是啥?先来看上层建筑,既得利益者是希望 ......
小吏 算法 深度 人生

[代码随想录]Day28-贪心算法part02

## 题目:[122. 买卖股票的最佳时机 II](https://leetcode.cn/problems/best-time-to-buy-and-sell-stock-ii/) ### 思路: 假如第 0 天买入,第 3 天卖出,那么利润为:prices[3] - prices[0]。 相当于 ......
随想录 随想 算法 代码 part

面对算法竞赛OI的Linux下vim简易配置

这段配置基本通用 但是需要vim支持clipboard才能复制到系统剪切板 下面是配置正文 .vimrc ``` let mapleader = "\" vnoremap y "+y inoremap jk nnoremap e :w:!g++ % -o % nnoremap e :w:!g++ % ......
算法 简易 Linux vim

代码随想录第4天|链表复习

做这种算法题真的要放平心态,你想不到思路的时候不要觉得自己太笨,其实想不到很正常,今天环形链表和相交链表这两道题,真的一点思路都没有,环形链表是最难理解的,在课堂上学的链表上的那点东西拿来做这种题确实还是差很多,我真的非常感谢这个做题的训练营,没有它我自己真的做不下去,现在跟着一步一步来,不急于求成 ......
随想录 随想 代码

【LeetCode回溯算法#12】二叉树的直径,树形dp的前置内容(使用dfs)

### 二叉树的直径 给你一棵二叉树的根节点,返回该树的 **直径** 。 二叉树的 **直径** 是指树中任意两个节点之间最长路径的 **长度** 。这条路径可能经过也可能不经过根节点 `root` 。 两节点之间路径的 **长度** 由它们之间边数表示。 **示例 1:** ``` 输入:roo ......
树形 直径 算法 LeetCode 内容

最短路三种算法详解

# 最短路 最短路问题即,给你一张图,让你求出图中两点的最短距离。 这篇文章会讲解 $Dijkstra$、$Spfa$、$Floyd$ 三种算法,让您透彻理解最短路! ## Dijkstra ### 朴素版 题目: ![image](https://img2023.cnblogs.com/blog/ ......
算法

zlmediakit源码学习(扩展支持算法分析)

在zlmediakit源码基础上继续探索扩展支持算法分析功能。参照上一篇帖子:https://www.cnblogs.com/feixiang-energy/p/17623567.html 算法模型使用opencv自带的人脸检测库:https://github.com/opencv/opencv/b ......
算法 zlmediakit 源码

垃圾收集器ParNew&CMS与底层三色标记算法详解

垃圾收集算法 分代收集理论 当前虚拟机的垃圾收集都采用分代收集算法,这种算法没有什么新的思想,只是根据对象存活周期的不同将内存分为几块。一般将java堆分为新生代和老年代,这样我们就可以根据各个年代的特点选择合适的垃圾收集算法。 比如在新生代中,每次收集都会有大量对象(近99%)死去,所以可以选择复 ......
色标 底层 算法 垃圾 ParNew

社团算法学习笔记

社团算法学习笔记:https://gaowenxin95.github.io/le_graph/%E7%A4%BE%E5%9B%A2%E7%A4%BE%E5%8C%BA%E5%8F%91%E7%8E%B0%E7%AE%97%E6%B3%95%E5%AD%A6%E4%B9%A0%E7%AC%94%E8 ......
算法 社团 笔记

排序算法

## 排序 ### 插入排序 #### 直接插入排序 ```c++ //直接插入排序 void InsertSort(int A[], int n) { int i, j, temp; for (i = 1; i = 0 && A[j] > temp; j--) { //检查所有前面已拍好序的元素 ......
算法

大厂算法每日总结(GB字符串至少交换几次)

//一个数组中只有两种字符'G'和'B', //想要所有的G都放左边, 所有的B都放右边或者所有的B都放左边, 所有的G都放右边 //但只能在相邻字符之间进行交换操作 //返回至少需要交换几次 //方法1 public static int minSteps1(String s) { if(s == ......
字符串 算法 字符

大厂算法每日总结(统计文件夹下的文件)

//统计文件夹下的文件,是文件就累计1,隐藏文件空累计,文件不累计 public static void main(String[]args) { System.out.println(getFileNumber("D:\\重要文件")); } public static int getFileNu ......
文件 算法 文件夹