摘要: 算法之逆序对 逆序对问题 ​ 假设A[1..n]是一个有n个不同数的数组。若iA[j],则对偶(i, j)称为A的一个逆序对(inversion)。 1. 列出数组{2, 3, 8, 6, 1}的5个逆序对 2. 由集合{1, 2, ..., n}中的元素构成的什么数组具有最多的逆序对?它有多少逆序 阅读全文
posted @ 2018-01-29 20:20 Secondworld 阅读(2368) 评论(0) 推荐(0) 编辑
摘要: 算法题之数组和求解 数组和问题 ​ 加上给定一个数组和值x。设计一个算法使得如果数组中存在两个元素的和为x,则输出两个元素的值组成的数组(不区分先后),否则输出{ 1, 1}。 ​ 分析: 1. 最简单的办法,就是依次求每个元素与其他元素的和。这个就是经典的握手问题,不难得出其最坏时间复杂度为: $ 阅读全文
posted @ 2018-01-29 20:16 Secondworld 阅读(329) 评论(0) 推荐(0) 编辑
摘要: 重读算法导论之算法基础 插入排序 ​ 对于少量数据的一种有效算法。原理: 1. 整个过程中将数组中的元素分为两部分,已排序部分A和未排序部分B 2. 插入过程中,从未排序部分B取一个值插入已排序的部分A 3. 插入的过程采用的方式为: 依次从A中下标最大的元素开始和B中取出的元素进行对比,如果此时该 阅读全文
posted @ 2018-01-29 20:02 Secondworld 阅读(813) 评论(0) 推荐(0) 编辑