算法基础
SupreEvi
天天学习,好好想上
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
如何求一组数字的逆序对
问题描述:给定一组数字或者输入一组数字,如{13,2,5,6,7,4},求这组数字的逆序对数量。首先逆序对的定义:解决办法:1.最基础最容易理解的算法就是采用循环。从数字的第一个数据开始向后遍历,碰到逆序就累加。最后输出逆序对。时间复杂度为O(n^2)。其实是可以改进的。优点是好写,容易理解。缺点是时间复杂度太高。2.考虑冒泡排序和直接插入排序。冒泡排序和直接插入排...原创 2019-01-18 17:31:15 · 835 阅读 · 0 评论 -
如何求两个数的最大公约数
如何求两个数的最大公约数,网上已经有很多办法,作为自己的笔记记一下比较常用和好用的几种。大神的更详细链接在此:https://blog.youkuaiyun.com/Holmofy/article/details/764010741.辗转相除法先上定义:什么是辗转相除法。给定两个整数a和b,利用辗转相除法求a和b的最大公约数的流程:(1)假定a>b,如果a<b,则交换a...原创 2019-01-23 22:26:42 · 1547 阅读 · 0 评论 -
树状数组
什么是树状数组:定义来自百度百科:用图就可以表示为:将箭头看做该节点的儿子节点,每一个节点的权值为所有儿子节点的权值和,易得: c[1]=a[1];c[2]=a[1]+a[2];c[3]=a[3];c[4]=c[2]+a[3]+a[4]=a[1]+a[2]+a[3]+a[4]; c[5]=a[5];c[6]...原创 2019-01-18 18:42:14 · 214 阅读 · 0 评论
分享