摘要:
板子: 插入后,每次与中间值相比较,再与左半部分中间值比较,再与右半部份中间值比较,直到找到它自己的位置, 待排序数据:2,1,6,7,4 数据部分:原文https://www.jianshu.com/p/93926f680184 取第一个元素作为有序表,剩余的元素作为无序表 其中有序表:2;无序表 阅读全文
摘要:
链接:https://codeforces.com/contest/1262/problem/B 题意:给定p数组的前缀最大值,问能否构造q数组,q数组必须是(1~n)输入n和p数组; 贪心一下,要么放当前p数组的值,要么放1~n中当前最小值; code; ``` #include<bits/std 阅读全文
摘要:
板子: 插入后,每次与中间值相比较,再与左半部分中间值比较,再与右半部份中间值比较,直到找到它自己的位置, 待排序数据:2,1,6,7,4 数据部分:原文https://www.jianshu.com/p/93926f680184 取第一个元素作为有序表,剩余的元素作为无序表 其中有序表:2;无序表 阅读全文
摘要:
板子: 1,从数列中挑出一个元素,称为 “基准”(pivot); 2,重新排序数列,所有元素比基准值小的摆放在基准前面,所有元素比基准值大的摆在基准的后面(相同的数可以到任一边)。在这个分区退出之后,该基准就处于数列的中间位置。这个称为分区(partition)操作; 3,递归地(recursive 阅读全文
摘要:
链接:https://www.lintcode.com/problem/sort-colors-ii/description 裸快排:(不用sort进行排序) 1 class Solution { 2 public: 3 /** 4 * @param colors: A list of intege 阅读全文
摘要:
链接:https://www.lintcode.com/problem/reverse-pairs/description 求逆序对对数,盲猜暴力超时 手写mergesort; 比如左右都是排好序的; 2 4 ,1 3 由于2>1,mid=2,对数就是(mid-i+1)对,(2,1),(4,1); 阅读全文
摘要:
链接:https://www.lintcode.com/problem/car-fleet/description 题意:有好多车和它们的位置,速度,如果后边车在终点前追上前边的,则可以形成一个车队,问最终到达终点的有几个车队; 直接想比较难,算一下它们到终点的时间,如果后边车的时间小于等于前边车的 阅读全文