题目:https://pintia.cn/problem-sets/994805342720868352/problems/994805417945710592 题意:对一个栈进行push, pop和找中位数三种操作。 思路: 好久没写题。感觉傻逼题写多了稍微有点数据结构的都不会写了。 pop和pu ...
分类:
编程语言 时间:
2019-03-23 10:37:00
阅读次数:
226
【题目】 给定两个有序数组arr1和arr2,已知两个数组的长度都为N,求两个数组中所有数的上中位数。要求时间复杂度O(logN),空间复杂度O(1) 【举例】 例如 arr1 = [1, 2,3,4],arr2 = [3,4,5,6]。 总共8个数,则中位数就是第 4 小的数,为 3. 例如 ar ...
分类:
编程语言 时间:
2019-03-20 01:23:01
阅读次数:
188
题目描述:给定两个大小为 m 和 n 的有序数组 nums1 和 nums2。请你找出这两个有序数组的中位数,并且要求算法的时间复杂度为 O(log(m + n))。你可以假设 nums1 和 nums2 不会同时为空。 示例 1: nums1 = [1, 3] nums2 = [2] 则中位数是 ...
分类:
编程语言 时间:
2019-03-16 13:03:04
阅读次数:
234
这道题要求算法时间复杂度为log(m+n)一般来讲这是二分法的复杂度,但两个数组之间交叉起来不能简单靠二分法来解决,必须进行合并,但一合并复杂度就是m+n,所以这题有点奇怪 我采用python来做,非常简单,也通过了,但是还是不清楚复杂度是如何判断的 ...
分类:
编程语言 时间:
2019-03-15 19:33:17
阅读次数:
238
1,从无序的数据流中找到其中位数:(用大根堆和小根堆来实现) 1 float getMidimum(vector<int>& nums) { 2 priority_queue<int> bigHeap; // 大数优先 3 priority_queue<int, vector<int>, great ...
分类:
编程语言 时间:
2019-03-15 17:39:16
阅读次数:
177
题目描述: 给定两个大小为 m 和 n 的有序数组 nums1 和 nums2。 请你找出这两个有序数组的中位数,并且要求算法的时间复杂度为 O(log(m + n))。 你可以假设 nums1 和 nums2 不会同时为空。 示例 1: nums1 = [1, 3] nums2 = [2] 则中位 ...
分类:
编程语言 时间:
2019-03-14 12:01:01
阅读次数:
160
一、常用的统计量: 均值mean()、中位数median()、众数mode()、分位数(上侧分位数、下侧分位数、四分位间距) ————四分位间距的求法:df[df<上界][df>下界] (上界:上侧分位数+K*四分位间距; 下界:上侧分位数+K*四分位间距) k指的是允许的形变 方差var(), 偏 ...
分类:
其他好文 时间:
2019-03-13 19:53:40
阅读次数:
214
leetcode4 此题归在二分法中: 大概思想:将两个数组分别分为两个部分,两者的数值较小的数字,就是合并后数组的前半部分 难点在:找到第一个数组的位置i,则第二数组的位置j = (m+n +1)/2 - i; 此后,由i,j找到中位数,如果m+n为奇数,则max_left即为所求,否则:(max ...
分类:
其他好文 时间:
2019-03-09 01:04:28
阅读次数:
199
链接 [https://codeforces.com/contest/540/problem/B] 题意 某个人有n门成绩,k门已知,剩下的他可以个瞎改,但有个要求,最后分数和不超过x,且每门成绩不超过p,中位数不小于y 分析 直接统计小于y的门数,总和最小就是y为中位数, 只需判断小于y的门数,若 ...
分类:
其他好文 时间:
2019-03-03 18:54:54
阅读次数:
132
题目传送门 题意: 在一个n个点,m条边的有向无环图中,求出所有从1到n 的路径的中位数的最大值 一条路径的中位数指的是:一条路径有 n 个点, 将这 n 个点的权值从小到大排序后,排在位置 ?n2?+1 上的权值。 思路: 看到权值为1~1e9,可以想到用二分答案,然后我们在验证的时候 可以将小于 ...
分类:
其他好文 时间:
2019-03-02 23:44:30
阅读次数:
240