首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
算法思想
NilesChen
创建于2025-06-26
订阅专栏
有关算法的一些小技巧及方法
暂无订阅
共11篇文章
创建于2025-06-26
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
AcWing学习——链表
1. 单链表 单链表常用于写邻接表,而邻接表的主要应用是用于存储图和树。 算法题的c/c++中,new一块地址空间的操作非常慢,当我们需要对非常大的数据进行链表操作时,可以使用数组模拟链表,即静态操作
AcWing学习——区间合并
1. 概念 当给定几个连续区间,对拥有区间交集的区间进行合并操作,该操作称为区间合并。 2. 思路 首先按每个区间的左端点进行排序,其次扫描所有区间,将有交集的区间进行合并。由于已经按左端点进行排序,
AcWing学习——位运算
1. 概念 位运算相当于对某个数进行二进制运算。对n数左移m位相当于n*2^m即n<<m,右移相当于n*2^(-m)即n>>m,求n的二进制表示中的个位数相当于n%2即n&1。 2. 思路 通常使用位
AcWing学习——双指针算法
1. 概念 双指针通过两个指针以不同速度和条件来遍历某个区间,在遍历期间能够找到符合特定条件的元素或者子区间。 2. 思路 一般的双指针算法都存在一个暴力算法,即O(n^2)时间复杂度的算法,我们可以
AcWing学习——差分
1. 概念 差分其实就是前缀和的逆运算,已知a1、a2……an,构造b1、b2……bn,使得ai=b1+b2+……+bi,bj=aj-a(j-1),A数组称为B数组的前缀和,B数组称为A数组的差分。
Acwing学习——前缀和
1. 概念 顾名思义,前缀和就是前v项之和;当存在a1、a2、a3 …… an时,前缀和Sv=a1+a2+……+av。 2. 思路 当我们需要求第l项到第r项的元素和时,我们可以用Sr-S(l-1),
AcWing学习——高精度
1. 概念 当两个正数相加时,可能会超出其类型的最大范围。当两个负数相加时,可能会超出其类型的最小范围。当两个数相乘时,依旧可能会超出其类型所能表示的最大范围。 2. 加法 2.1. 思路 从个位开始
AcWing学习——二分查找
1. 概念 我们常用二分查找来查找某一个有序数组中的某个元素,但是二分查找同样可以用于查找边界。 二分的思想是在一个区间内每次通过缩小一半的空间来查找答案或者边界,然后向答案所在的区间继续下一步的处理
AcWing学习——归并排序
1. 概念 归并排序与快速排序有异曲同工之处,同样是利用到了分治思想,但是归并排序还利用到了归并的思想,将原数组依次分治,形成最小的有序子数组,然后俩俩归并,依次形成一个更大的有序子数组,直到原数组完
Acwing学习——快速排序
1. 快速排序 1.1. 概念 快速排序的核心是分治思想,且需要一定的递归思想,根据局部有序最后确定整体有序。 1.2. 步骤 确定分界点:确定一个中间数(记为X),这个数可以是数组首元素,也可以是数
辗转相除法(欧几里得演算法)
辗转相除法也称为欧几里得演算法,该方法可以用于求两个数的最大公因数。初学者编写,有不妥之处请多多指教。