【算法_基础_伪代码定义以及遵循的规则】教程文章相关的互联网学习教程文章

基础数论--扩展欧几里得算法【代码】【图】

正常的欧几里得算法1 int gcd(int a,int b){ 2 return b==0?a:gcd(b,a%b); 3 }可以在O(n)的时间复杂度内,求出a和b两数的最大公约数。 而扩展欧几里得算法则可以在求出最大公约数的同时,求出两个数x,y,使得x*a+y*b=gcd(a,b),用处就是可以用来求解线性同余方程(写在下边) 1 //推荐第二种写法2 #include<iostream>3 using namespace std;4 int exgcd1(int a,int b,int& x,int& y){5 if(b==0){6 x=1,y=0;7 ...

大数据 | 大数据基础--算法之亚线性时间算法:计算图的平均度算法三

亲爱的读者朋友大家晚上好,上次我们分析了计算平均度的第二个估计算法,简而言之就是在算法一的基础上为小桶定一个下届。我们继续对算法二进行优化,这次我们期望获得一个近似比为的算法。 算法改进的思想 我们将算法出现的误差归结到边上,让我们来看看究竟是哪些边导致了这样的错误。将节点分为两部分,其中是度数较小的节点,是度数较大的节点,表示连接两个集合的边的集合。于是,我们断言出现误差就是因为中的边我们只计算了...

kmp算法模板和基础应用【代码】

模板题:https://www.acwing.com/problem/content/833/ 题意:给两个字符串长度及序列,求第一个串在第二个串中出现的位置3 aba5 ababa求next数组: for(int i=2,j=0;i<=m;i++){while(j&&p[i]!=p[j+1])j=ne[j];if(p[i]==p[j+1])j++;ne[i]=j; }kmp匹配过程 for(int i=1,j=0;i<=n;i++){while(j&&s[i]!=p[j+1])j=ne[j];if(s[i]==p[j+1])j++;if(j==m) j=ne[j]; //避免下次的p[j+1]越界 }代码: #include<iostream> #include<cstdio> u...

【技术点】计算机基础算法——排序 & 搜索 & 字符串匹配

文章目录前言 排序 搜索搜索 模式匹配朴素模式匹配 KMP算法核心逻辑 预处理过程 KMP代码:前言 ? 之前写过一个数据结构的专栏: ? 在专栏里介绍了一些常用的数据结构及其操作。现在想着把一些常用的算法也罗列出来讲一讲,总结一下。这里的算法和现在的AI算法是两码事,我个人的简单理解是计算机科学中的一些经典算法,如排序,搜索等。在整个计算机的处理过程中,大量的操作都可以抽象为排序和搜索。所以了解这两中基本算法类是非...

原创 | 险些翻车,差一点没做出来的基础算法题【图】

大家好,欢迎大家阅读周末算法题专题。今天我们选择的题目是codeforces上周比赛的C题,我上周本来想参赛的,都已经报名了。但是后来由于身体不适,所以早早休息了,没有参加。今天抽空做了一下上周的题目之后非常庆幸还好上周没参加,不然的话rating肯定要掉了。题目链接:https://codeforces.com/contest/1405/problem/C这道题有6800多人通过,怎么看也不算是难题,但是我做了一上午都没能AC。最后又苦思冥想了很久,才最终做出来...

算法工程师需要编程基础【图】

一、语言编程基础 二、服务编程基础 三、框架编程基础 三种图 :静态图计算方便编译和服务部署 :动态图方便算法研发和测试研究 :自动图方便学习和开发过程转换 下一代:计算框架 下一代:计算芯片(统一内存框架UMA技术)

【基础算法】牛牛掷硬币【基础】【代码】

传送门 牛牛掷硬币 AC代码 第一种写法:找规律 class Solution { public:/*** 返回一个严格四舍五入保留两位小数的字符串* @param n int整型 n* @return string字符串*/string Probability(int n) {// write code heredouble ans = 1;if (n == 1) return "1.00";if (n == 2) return "0.50";if (n == 3) return "0.25";if (n == 4) return "0.13";if (n == 5) return "0.06";if (n == 6) return "0.03";if (n == 7) return "0.02";i...

Java基础算法之找出一段字符串中所有回文串、最长的回文串以及最长回文串长度【代码】

Java基础算法之找出一段字符串中所有回文串、最长的回文串以及最长回文串长度回文的含义是:字符串从左向右看和从右向左看是相同的,例如:abba,1234321。import lombok.extern.slf4j.Slf4j;import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map;/*** 获取最长回文串* 回文的含义是:子串从左向右看和从右向左看是相同的,例如:abba,1234321。** @author : Create by 半路勇者 ...

基础算法一:二分法,确定自己掌握了吗?【代码】【图】

基础算法一:二分法,你思考过这些问题吗? 如何优雅的处理边界条件? 一定要数据有序时才能使用二分吗? 如何优雅的证明二分法的时间复杂度是O(logn)? 如果这几个问题你已经完全掌握了,可以点击右上角关闭。如果想听听我的心得,请读完下面内容。 1. 什么是二分法? ? 二分法(Bisection method),即一分为二的的方法。对于在区间[a,b]上连续不断且满足f(a)*f(b)<0的函数y=f(x),通过不断地把函数f(x)的零点所在区间二等分,使区间...

算法基础——合并集合【代码】

原题链接 题目: 一共有n个数,编号是1~n,最开始每个数各自在一个集合中。 现在要进行m个操作,操作共有两种: “M a b”,将编号为a和b的两个数所在的集合合并,如果两个数已经在同一个集合中,则忽略这个操作; “Q a b”,询问编号为a和b的两个数是否在同一个集合中; 输入格式 第一行输入整数n和m。 接下来m行,每行包含一个操作指令,指令为“M a b”或“Q a b”中的一种。 输出格式 对于每个询问指令”Q a b”,都要输出一个...

算法基础<一>【代码】

Bag(包) 背包:不支持删除元素的集合数据类型。public interface IBag<TItem> : IEnumerable<TItem>, IDisposable{bool IsEmpty { get; }int Length { get; }void Add(TItem item);}数组实现public class ResizingArrayBagNet<TItem>:IBag<TItem>{private TItem[] _items;private int _length;public ResizingArrayBagNet(){_items=new TItem[2];_length = 0;}public IEnumerator<TItem> GetEnumerator(){if (!IsEmpty){for (var...

算法基础——最大异或对【代码】

原题链接 在给定的N个整数A1,A2……AN中选出两个进行xor(异或)运算,得到的结果最大是多少? 输入格式 第一行输入一个整数N。 第二行输入N个整数A1~AN。 输出格式 输出一个整数表示答案。 数据范围 1 ≤ N ≤ 10^5, 0 ≤ Ai < 2^31 输入样例: 3 1 2 3输出样例: 3

算法基础——Trie字符串统计【代码】

原题链接 题目: 维护一个字符串集合,支持两种操作: “I x”向集合中插入一个字符串x; “Q x”询问一个字符串在集合中出现了多少次。 共有N个操作,输入的字符串总长度不超过 10^5,字符串仅包含小写英文字母。 输入格式 第一行包含整数N,表示操作数。 接下来N行,每行包含一个操作指令,指令为”I x”或”Q x”中的一种。 输出格式 对于每个询问指令”Q x”,都要输出一个整数作为结果,表示x在集合中出现的次数。 每个结果占...

leetcode算法题基础(二十八)拓扑排序(二)210. 课程表 II【代码】

现在你总共有 n 门课需要选,记为 0 到 n-1。 在选修某些课程之前需要一些先修课程。 例如,想要学习课程 0 ,你需要先完成课程 1 ,我们用一个匹配来表示他们: [0,1] 给定课程总量以及它们的先决条件,返回你为了学完所有课程所安排的学习顺序。 可能会有多个正确的顺序,你只要返回一种就可以了。如果不可能完成所有课程,返回一个空数组。 示例 1: 输入: 2, [[1,0]] 输出: [0,1]解释: 总共有 2 门课程。要学习课程 1,你需要先完...

leetcode算法题基础(十九)广度优先(一)559. N叉树的最大深度【代码】【图】

给定一个 N 叉树,找到其最大深度。 最大深度是指从根节点到最远叶子节点的最长路径上的节点总数。 例如,给定一个 3叉树 : 我们应返回其最大深度,3。 说明: 树的深度不会超过 1000。树的节点总不会超过 5000。 来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/maximum-depth-of-n-ary-tree著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。""" # Definition for a Node. class No...