LintCode
YoungJean
生活没有彩排,每天都是现场直播,没有时间去忏悔过去了!
展开
-
LintCode 求逆序对
题目 在数组中的两个数字如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。给你一个数组,求出这个数组中逆序对的总数。 概括:如果a[i] > a[j] 且 i < j, a[i] 和 a[j] 构成一个逆序对。样例序列 [2, 4, 1, 3, 5] 中,有 3 个逆序对 (2, 1), (4, 1), (4, 3),则返回 3 。 算法如下:/** * @param原创 2017-02-16 19:30:43 · 629 阅读 · 0 评论 -
LintCode 最多有多少个点在一条直线上
题目给出二维平面上的n个点,求最多有多少点在同一条直线上。 样例给出4个点:(1, 2), (3, 6), (0, 0), (1, 3)。 一条直线上的点最多有3个。 解决思路 重复的点没有必要去增加时间复杂度, 先把point点简化成没有重复的新数组norepeatvalues以及记录每个新数组的成员point对应的重复次数repeatcounts数组; 两个点可以确定一条直线,假设有一个起始点P原创 2017-02-17 16:29:29 · 3257 阅读 · 0 评论