![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法基础
SupreEvi
天天学习,好好想上
展开
-
如何求一组数字的逆序对
问题描述: 给定一组数字或者输入一组数字,如{13,2,5,6,7,4},求这组数字的逆序对数量。 首先逆序对的定义: 解决办法: 1.最基础最容易理解的算法就是采用循环。从数字的第一个数据开始向后遍历,碰到逆序就累加。最后输出逆序对。时间复杂度为O(n^2)。其实是可以改进的。 优点是好写,容易理解。 缺点是时间复杂度太高。 2.考虑冒泡排序和直接插入排序。冒泡排序和直接插入排...原创 2019-01-18 17:31:15 · 715 阅读 · 0 评论 -
如何求两个数的最大公约数
如何求两个数的最大公约数,网上已经有很多办法,作为自己的笔记记一下比较常用和好用的几种。 大神的更详细链接在此: https://blog.csdn.net/Holmofy/article/details/76401074 1.辗转相除法 先上定义:什么是辗转相除法。 给定两个整数a和b,利用辗转相除法求a和b的最大公约数的流程: (1)假定a>b,如果a<b,则交换a...原创 2019-01-23 22:26:42 · 1390 阅读 · 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 · 129 阅读 · 0 评论