
算法
记录算法学习过程中的知识点
z974656361
这个作者很懒,什么都没留下…
展开
-
算法题——分配礼物
算法刷题记录,深度优先算法原创 2022-07-05 09:55:49 · 1599 阅读 · 0 评论 -
排序算法笔记-1
插入排序算法的时间复杂度是归并排序算法、堆排序算法和快速排序算法的时间复杂度是快速排序算法时间复杂度最坏的情况下是。对于归并排序算法而言,如果实现方式是自顶向下,那么算法的空间复杂度是。如果实现方式是自底向下,那么算法的空间复杂度是。归并排序算法是基于分治算法来实现的。...原创 2022-01-11 09:49:11 · 293 阅读 · 0 评论 -
利用位运算判断字符是否存在
背景一般情况下,我们判断一个字符串中是否存在某个字符,最常用的方法就是遍历字符串进行逐个匹配的方法。另外,就是利用Map、Set和二叉搜索树这种结构,降低算法的复杂度。逐个遍历的方法,很明显算法复杂度是线性增长的。利用Map、Set和二叉搜索树来进行辅助的判断,这种数据结构虽然查找效率相对较高,但是本身会占用较大的存储空间。在不区分大小写的情况下,我们可以利用位运算来辅助进行判断。主要思想利用位运算来辅助判断字符是否存在于某个字符串中,主要是的思路是:在不区分大小写的情况下进行查原创 2021-06-19 22:48:35 · 1454 阅读 · 3 评论 -
斜着遍历二维数组
背景在算法实现中,经常需要斜着对二维数组进行遍历,最常见的例子,就是在动态规划算法,需要遍历二维数组的时候。这种写法,如果不熟悉,经常会导致算法实现卡壳。这里,以笔记的方式记录一下常见的实现方式,便于以后复习用。实现本文以java代码的方式实现,其他的语言可以借鉴public class Solution{ public void dp(int n){ int[][] array = new int[n + 1][n + 1]; ...原创 2021-06-19 09:53:12 · 949 阅读 · 0 评论