数列 前缀 区间 算法

代码随想里算法训练营第四天|

24. 两两交换链表中的节点 题目 给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。 第一想法 第一次做这个题的时候其实没搞懂怎么两两交换,原来是12、34、56这样... 应该是反转链表的变体,先判断头节点的nex ......
训练营 随想 算法 代码

代码随想录算法训练营第三天| 203.移除链表元素 ,707.设计链表 ,206.反转链表

203.移除链表元素 题目 给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点 。 第一想法 定义一个指针a指向头节点,顺序遍历链表,循环结束的条件是指针a.next为null 删除操作是判断a.next.val= ......
随想录 训练营 随想 算法 元素

贪心算法--找零问题

> 博客地址:https://www.cnblogs.com/zylyehuo/ * ![](https://img2023.cnblogs.com/blog/3071480/202308/3071480-20230818211054542-2028904322.png) * ![](https:/ ......
算法 问题

[代码随想录]Day21-回溯算法part01

## 题目:[77. 组合](https://leetcode.cn/problems/combinations/) ### 思路: 回溯就是dfs的一个特殊情况也就是递归的一种情况,值得注意的一点: 要记得深拷贝,不然最后全是空 ### 代码: ```go var res [][]int var ......
随想录 随想 算法 代码 part

JavaScript中常见的数据结构和算法及其应用场景简介

在JavaScript编程中,数据结构和算法是必不可少的组成部分。本文将介绍JavaScript中常见的数据结构和算法以及它们的应用场景。 ......
数据结构 算法 JavaScript 场景 常见

C-排序算法

稳定性:在待排序的数据中,对于数值相同的数据,在整个排序过程中如果不会改变他们原来的先后顺序,则认为该排序算法是稳定的。 内排序:所有排序操作都在内存中完成。 外排序:由于数据太大,因此把数据放在磁盘中,而排序通过磁盘和内存的数据传输才能进行。 比较排序:在排序的最终结果里,元素之间的次序依赖于他们 ......
算法

2023-08-18:用go写算法。你会得到一个字符串 text, 你应该把它分成 k 个子字符串 (subtext1, subtext2,…, subtextk)。 要求满足: subtexti 是

2023-08-18:用go写算法。你会得到一个字符串 text, 你应该把它分成 k 个子字符串 (subtext1, subtext2,…, subtextk)。 要求满足: subtexti 是 非空 字符串, 所有子字符串的连接等于 text , ( 即subtext1 + subtext2 ......
字符串 字符 subtext 个子 算法

算法学习笔记

[来源](https://harryqu1229.github.io/2022/06/12/%E7%AE%97%E6%B3%95%E7%BB%88%E6%9E%81%E6%8C%87%E5%8D%97/#%E5%BD%92%E5%B9%B6%E6%8E%92%E5%BA%8F) ### 排序算法 # ......
算法 笔记

P1923 【深基9.例4】求第 k 小的数(快速选择算法)

题解: 利用快速排序的思想来寻找第k小的数,可以避免很多不必要的操作 1 #include <bits/stdc++.h> 2 using namespace std; 3 const int N = 5000005, M = 5e6 + 5; 4 int x[N], k; 5 inline int ......
算法 P1923 1923

TFIDF改进版:BM25算法介绍及Lucene的实现

# 优化TF ## TF衰减 > 思考一个问题:一篇文档,里面有提到200次RedCap,一定是2倍相关于另一篇提到100次RedCap吗? $TF$对匹配度的贡献应该是有所衰减的。如何控制衰减曲线的陡峭程度?构造$TF$衰减的匹配度函数的一个trick是引入参数$k$: $$ {TF}^\prim ......
算法 Lucene TFIDF BM 25

常用算法

算法主要是由头文件 <algorithm> <functional> <numeric> 组成。 <algorithm> 是所有 STL 头文件中最大的一个,范围涉及到比较、交换、查找、遍历操作、复制、修改等等 <nuneric> 体积很小,只包括几个在序列上面进行简单数学运算的模板函数 <func ......
算法 常用

C++快速入门 第四十七讲:容器和算法

C++标准库提供的向量(vector)类型从根本上解决了数组先天不足的问题(内存固定,如果不用那么多内存编译器也会为其分配) 我们用不着对一个向量能容纳多少元素做出限定,因为向量可以动态地随着你往它里面添加元素而无限增大。还可以用它的size()方法查知某给定向量的当前长度(即包含的元素个数);用p ......
算法 容器

双指针算法

# 双指针算法 ```c++ for(int i=0, j=0; i using namespace std; const int N = 100010; int a[N], s[N];//s数组用来判断 j ~ i 之间有没有重复的 int main(){ int n; cin>>n; for(i ......
指针 算法

算法复杂度速查表

https://zhuanlan.zhihu.com/p/158694568 目录 目录 1. 背景 2. Big-O Complexity Chart 3. Common Data Structure Operations 4. Array Sorting Algorithms 1. 背景 最近看 ......
复杂度 算法

主席树的区间修改

因为以前搞的主席树基本都忘了,故写一篇帮助记忆。 前置芝士: [主席树](https://zhuanlan.zhihu.com/p/250565583) 我发现网上的大部分代码码风和我不同,我希望主席树的打法和线段树差不多,所以我找到了一个和线段树差不多的打法。 首先,主席树如果涉及到区间修改,会稍 ......
区间 主席

用户新增预测挑战赛(算法挑战大赛)

讯飞开放平台针对不同行业、不同场景提供相应的AI能力和解决方案,赋能开发者的产品和应用,帮助开发者通过AI解决相关实际问题,实现让产品能听会说、能看会认、能理解会思考。 用户新增预测是分析用户使用场景以及预测用户增长情况的关键步骤,有助于进行后续产品和应用的迭代升级。 本次大赛提供了讯飞开放平台海量... ......
挑战赛 算法 用户

基于CEM算法的三维点云数据二维映射表示matlab仿真

1.算法理论概述 三维点云数据是一种重要的空间信息表示方式,广泛应用于计算机视觉、机器人、虚拟现实等领域。然而,三维点云数据的特征维度往往很高,难以直接处理和分析。因此,将三维点云数据转换为低维度的二维映射表示,是一种有效的数据降维方法,可以方便地进行数据处理和分析。本文提出了一种基于CEM(con ......
算法 数据 matlab CEM

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

977.有序数组的平方 题目 给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。 第一想法 隐隐约约有印象是用双指针法头尾一起向中间移动,因为这个数组的特点决定了平方数中间小两边大 思路&题解 class Solution { publ ......
数组 随想录 训练营 矩阵 螺旋

(全英语版)处理恶意软件的随机森林分类器算法(Random Forest Classifier On Malware)

Random Forest Classifier On Malware (copyright 2020 by YI SHA, if you want to re-post this,please send me an email:shayi1983end@gmail.com) (全英语版)处理恶意软 ......
算法 Classifier 恶意 森林 Malware

共识算法 ZAB

> ZAB 的作者说 ZAB 不是 Paxos,但后面我们又把 ZAB 归纳为 Paxos。我认为这两个说法都对,只是他们描述的时间不一致。在 ZAB诞生时,它解决了 Paxos 不能保证顺序执行的问题,从某些角度来说 ZAB 是要 Paxos 优秀的,说它不是 Paxos 也没问题。但是后来随来越 ......
共识 算法 ZAB

【算法学习笔记】DFN序求LCA(最近公共祖先)

## 前置知识 * DFN序:对一棵树进行深度优先搜索`DFS`得到的**结点序列**,即深度优先搜索`DFS`的访问顺序。该表述不一定严谨,建议百度 * ST表(Sparse Table,稀疏表) ## 算法概述 > ###引理 1.1 > 在 DFN序 中祖先一定出现后代之前。 考虑一树上的两个 ......
祖先 算法 笔记 DFN LCA

C++ STL算法篇@@

算法基础算法概述 算法部分主要由头文件,,组成. 是所有STL头文件中最大的一个,其中常用到的功能范围涉及到比较交换替换便利操作复制修改反转排序合并等等. 体积很小,只包括几个在序列上面进行简单数学运算的模板函数,包括加法和乘法在序列上的一些操作 定义了一些模板类,用以声明函数对象 STL提供了大量 ......
算法 STL

算法学习笔记-逆元

### 前言: 还记得小学学的倒数吗?倒数的定义大概是若 $ax = 1$,则称 $x$ 为 $a$ 的倒数。而逆元,其实可以看做在模意义下的倒数。也就是 $ax \equiv 1 \pmod p$,且 $a$ 与 $p$ 互质,则称 $x$ 为 $a$ 在模 $p$ 意义下的乘法逆元,记作 $a^... ......
算法 笔记

数组下标中值求取算法

问题 解法一 1.先计算出所需区间的大小10-2=82.计算当前区间的中值8/2=43.用区间起点加上中值,即为真实的中间值 2+4=6 完整公式是 (end-start)/2 + start 解法二 1.前置扩充所需区间start大小2.后置扩充所需区间start大小3.新的区间大小是12,那么中 ......
中值 下标 数组 算法

组合导航原理(七)——位姿算法更新总结

IMU输出的是: t时刻的角度增量:Δθ(t) = ∫ wbib(τ)dτ t时刻的速度增量:Δv(t)= ∫ fb (τ)dτ t时刻的增量,是相对于t-1时刻而言,并不是初始时刻,这个要特别注意。 而角度增量Δθ(t)、速度增量Δv(t)中,抹掉了很多信息,比如: 输出的蓝色的面积,但是曲线细节 ......
算法 原理

背包算法

转自: https://zhuanlan.zhihu.com/p/349054931 https://blog.csdn.net/windfriendc/article/details/123892024 ......
算法 背包

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

# 二、如果用go语言,在 RANDOMIZED-QUICKSORT 的运行过程中,在最坏情况下,随机数生成器 RANDOM 被调用了多少次?在最好情况下呢?以θ符号的形式给出你的答案? ## 文心一言: 在 RANDOMIZED-QUICKSORT 的运行过程中,最坏情况下,随机数生成器 RAND ......
文心 导论 算法 chatgpt VS

代码随想录算法训练营第十八天| 513.找树左下角的值 112. 路径总和 106.从中序与后序遍历序列构造二叉树

找树左下角的值 卡哥建议:本地递归偏难,反而迭代简单属于模板题, 两种方法掌握一下 题目链接/文章讲解/视频讲解:https://programmercarl.com/0513.%E6%89%BE%E6%A0%91%E5%B7%A6%E4%B8%8B%E8%A7%92%E7%9A%84%E5%80% ......
随想录 训练营 总和 序列 随想

代码随想录算法训练营第十七天| 110.平衡二叉树 257. 二叉树的所有路径 404.左叶子之和

卡哥建议:迭代法,大家可以直接过,二刷有精力的时候 再去掌握迭代法。 110.平衡二叉树 (优先掌握递归) 卡哥建议:再一次涉及到,什么是高度,什么是深度,可以巩固一下。 题目链接/文章讲解/视频讲解:https://programmercarl.com/0110.%E5%B9%B3%E8%A1%A ......
随想录 之和 训练营 随想 算法

拓扑排序算法笔记

## 思想 拓扑,一看就是从图的开始开始开拓,并按被开拓到的顺序排序 拓扑排序的思想如下: > 将入度为 $0$ 的点删除,并记录它被删除的顺序,直到没有点则结束程序 代码也十分简单: ```cpp #include using namespace std; bool b[100001]; int ......
拓扑 算法 笔记