03后台-必备算法分享
文章平均质量分 50
记录后台开发,面试的过程中一定要掌握的算法知识
_刘小雨
一枚普通而~~~
展开
-
【哈希】字符串哈希算法
字符串哈希给定一个长度为n的字符串,再给定m个询问,每个询问包含四个整数l1,r1,l2,r2,请你判断[l1,r1]和[l2,r2]这两个区间所包含的字符串子串是否完全相同。字符串中只包含大小写英文字母和数字。输入格式第一行包含整数n和m,表示字符串长度和询问次数。第二行包含一个长度为n的字符串,字符串中只包含大小写英文字母和数字。接下来m行,每行包含四个整数l1,r1,l2,r2,表示一次询问所涉及的两个区间。注意,字符串的位置从1开始编号。输出格式对于每个询问输出一个结果,如果两个字原创 2021-02-16 23:29:10 · 1260 阅读 · 1 评论 -
【双指针】最长连续不重复子序列,数组目标和,子序列
文章目录最长连续不重复子序列数组元素的目标和判断子序列最长连续不重复子序列给定一个长度为n的整数序列,请找出最长的不包含重复的数的连续区间,输出它的长度。输入格式第一行包含整数n。第二行包含n个整数(均在0~100000范围内),表示整数序列。输出格式共一行,包含一个整数,表示最长的不包含重复的数的连续区间的长度。#include <iostream>using namespace std;const int N = 100010;int n;int a[N],原创 2021-02-15 16:56:07 · 262 阅读 · 0 评论 -
【位运算】二进制中1的个数,常见的位运算
求n的第k位数字: n >> k & 1返回n的最后一位1:lowbit(n) = n & -n ,如果5 ,就返回1; 如果是4,就返回4(100), 如果是8,就返回8(1000). () 里面是二进制。二进制中1的个数给定一个长度为n的数列,请你求出数列中每个数的二进制表示中1的个数。输入格式第一行包含整数n。第二行包含n个整数,表示整个数列。输出格式共一行,包含n个整数,其中的第 i 个数表示数列中的第 i 个数的二进制表示中1的个数。#i原创 2021-02-10 21:40:41 · 201 阅读 · 0 评论 -
【前缀和】前缀和,差分算法讲解
文章目录前缀和前缀和矩阵(子矩阵的和)差分差分矩阵(直接用公式)前缀和输入一个长度为 n 的整数序列。接下来再输入 m 个询问,每个询问输入一对 l,r。对于每个询问,输出原序列中从第 l 个数到第 r 个数的和。输入格式 第一行包含两个整数 n 和 m。第二行包含 n 个整数,表示整数数列。接下来 m 行,每行包含两个整数 l 和 r,表示一个询问的区间范围。输出格式 共m行,每行输出一个询问的结果。#include <iostream>using namespa原创 2021-02-10 21:35:46 · 313 阅读 · 0 评论 -
【大数】高精度运算实现加减乘除(vector)
文章目录高精度加法高精度减法高精度乘法高精度除法高精度加法1≤整数长度≤100000, 实现这两个整数的和。#include <iostream>#include <vector>using namespace std;vector<int> add(vector<int>& A, vector<int>& B) ///< 计算数组A 表示的大数 加上数组B表示的大数{ vector<int>原创 2021-02-10 21:26:48 · 1044 阅读 · 0 评论 -
【二分】二分法的应用
查找数的范围给定一个按照升序排列的长度为n的整数数组,以及 q 个查询。对于每个查询,返回一个元素k的起始位置和终止位置(位置从0开始计数)。如果数组中不存在该元素,则返回“-1 -1”。输入格式: 第一行包含整数n和q,表示数组长度和询问个数。第二行包含n个整数(均在1~10000范围内),表示完整数组。接下来q行,每行包含一个整数k,表示一个询问元素。#include <iostream>using namespace std;const int N = 100010原创 2021-02-10 21:19:16 · 113 阅读 · 0 评论 -
【排序】快速排序和归并排序附加应用算法题
文章目录实现快速排序快速排序实战(第K个数)实现归并排序归并排序实战(逆序对的数量)[牛客网题目](https://www.nowcoder.com/practice/96bd6684e04a44eb80e6a68efc0ec6c5?tpId=190&tqId=35588&rp=1&ru=/ta/job-code-high-rd&qru=/ta/job-code-high-rd/question-ranking&tab=answerKey)实现快速排序快速排序是原创 2021-02-10 21:11:09 · 127 阅读 · 0 评论