算法总结
文章平均质量分 52
xiaoyu_mengmeng
这个作者很懒,什么都没留下…
展开
-
算法总结——快速排序算法
快速排序(学习基础,虽然现在的库里都封装好了,但是可以学习基本思想。)思想:快速排序就是找一个中枢(正常是第一个),以升序为例将小于中枢的放在数组左边,将大于中枢的放在数组右边。然后左右两边继续递归下去。快速排序越接近无序效率越高,时间复杂度最好的是O(nlog2n),待排接近有序的最坏的情况是O(log2n),空间复杂度是O(log2n)伪代码:...原创 2022-05-05 13:55:58 · 1064 阅读 · 1 评论 -
算法总结——查找算法
查找算法(ps:虽说现在很多的编程都是封装好了,直接调库,我觉得查找的思想还是可以用到很多地方的,所以想了想还是把传统的查找算法总结一下,也是自己回顾回顾。)1.顺序查找2.二分(折半)查找3.插值查找4.斐波那契查找5.树表查找6.分块查找7.哈希查找(xdm,我就用简单通俗的话来解释解释了)1.顺序查找思想:从表中的第一个元素开始到表中的最后一个元素一次比较查找,如果等于目标元素则输出。c++实现:class Solution{public: bool findTa原创 2022-04-28 12:23:26 · 247 阅读 · 0 评论 -
算法总结——摩尔投票算法思想
摩尔投票算法[PS:摩尔投票思想其实就是一组数据nums[n],其中有一个数a的数量大于等于n/2,这组数据竞争找出那个a,本身思想很简单,我把它放过来主要以为,摩尔投票提供了很好的时间复杂度O(n),和空间复杂度O(1)。]思想:在我们求一组数据中大于等于n/2的数时,可以用排序遍历,或者排序求中位数,或者用map(hash),但是相应时间和空间复杂度都不是很满意,用摩尔就是取众数+1,非众数-1,最后加下来必定>1,也就找出了众数。算法流程:1.首先假设第一个数为众数temp=nums[0原创 2022-03-21 16:21:10 · 310 阅读 · 0 评论 -
算法总结——异或运算
异或运算原创 2022-03-18 16:06:33 · 10461 阅读 · 0 评论