蓝桥杯算法从0到1
文章平均质量分 89
备战蓝桥杯的算法讲解及题目解析
凤梨罐头@
冷静,专注,思考
展开
-
【蓝桥杯算法】---第四讲---双指针
概念双指针算法是一种非常常用的算法,其实现原理也非常简单且灵活,具体操作一般是定义两个指针对数组进行遍历等操作。双指针算法有很多种情况,如下:一.对撞指针(头尾指针)头指针指向数组的第一个数字,尾指针指向数组的最后一个数字。二.单数组同向指针(快慢指针)两个指针指向同一个数组的第一个数字或者最后一个数字,一个指针走的快,一个指针走的慢。三.双数组指针这种情况多是两个指针分别指向两个不同的数组,分别进行遍历。快慢指针题目链接剑指 Offer 48. 最长不含重复字符的子字符串主要原创 2022-02-14 21:30:37 · 1328 阅读 · 13 评论 -
【蓝桥杯算法】---第三讲--差分
文章目录概念差分数组的应用场景一维数组的差分二维数组的差分概念在引出差分的概念之前,先看如下的两个数组其差分数组为:可以观察出a数组其实是b数组的前缀和a[1]=b[1]a[2]=b[1]+b[2]a[3]=b[1]+b[2]+b[3]a[4]=b[1]+b[2]+b[3]+b[4]…a[i]=b[1]+b[2]+b[3]…+b[i-1]+b[i]满足这样关系的数组,我们就称作差分数组,由此也可以看出差分其实是前缀和的逆运算。差分数组的应用场景一维数组的差分在某种场景下,原创 2022-02-11 20:15:55 · 2961 阅读 · 14 评论 -
【蓝桥杯算法】---第二讲---前缀和
文章目录概念一维数组的前缀和二维数组的前缀和概念前缀和算法是一种用于计算数组某个区间所有数字之和的算法一维数组的前缀和主要思想:将数组的第0个位置的数字置为0,从数组下标为1的位置开始输入数据,并同时计算前n个数字的总和。注意:数组的第0个位置被置为0,对计算结果不造成影响,因此接下来的描述不包括数组的第0个位置,只包括数组下标从1开始的数据。s[i]:前i个数字的和a[i]:数组里第i个数字的大小s[i]公式:s[i]=s[i-1]+a[i]推导过程:L:数组第L个数字R:数组原创 2022-02-04 22:22:34 · 1995 阅读 · 5 评论 -
【蓝桥杯算法】---第一讲---高精度
概念在理解概念之前,我们首先需要知道何谓大数字?大数字:大数字就是如15156156156151151这样庞大的数字,大数字都有一个共同特征:普通的存储类型无法存储,由此我们引进了高精度算法。高精度算法:高精度算法是一种通过数组进行逆序存储数字的算法。如:6515158912823478952在数组中的存储如下:高精度加法主要思想:用字符串进行接收数字,将数字逐一逆序存储到vector容器中,对应位置依次相加。#include<vector>#include<st原创 2022-02-02 18:27:47 · 1240 阅读 · 13 评论