归并排序
MD_
不拼一下 你怎么知道你不会成功!
展开
-
Leetcode 面试题51. 数组中的逆序对【回溯法&BIT】
文章目录问题描述解题报告归并排序方法BIT【参考官方答案】实现代码归并排序实现BIT实现参考资料问题描述在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数。解题报告归并排序方法不解释。时间复杂度:O(nlogn)O(nlog n)O(nlogn)空间复杂度:O(n)O(n)O(n)BIT【参考官方答案】【树状...原创 2020-04-25 22:30:41 · 241 阅读 · 0 评论 -
Leetcode 977. 有序数组的平方
文章目录问题描述解题报告实现代码问题描述给定一个按非递减顺序排序的整数数组 AAA,返回每个数字的平方组成的新数组,要求也按非递减顺序排序。解题报告方法一直接计算每个数的平方,然后排序。双指针使用两个指针分别读取数组的非负部分与负数部分【类似于归并排序的合并部分】。时间复杂度:O(n)O(n)O(n)实现代码双指针class Solution {public: ...原创 2020-03-28 21:49:10 · 98 阅读 · 0 评论 -
Leetcode 23. 合并K个排序链表【分而治之&最小堆】
文章目录问题描述解题报告实现代码问题描述合并 kkk 个排序链表,返回合并后的排序链表。请分析和描述算法的复杂度。输入输入输入:[ 1−>4−>5, 1−>3−>4, 2−>6][\\ \;\;\;\;1->4->5,\\ \;\;\;\;1->3->4,\\ \;\;\;\;2...原创 2020-03-17 21:08:31 · 107 阅读 · 0 评论 -
归并排序&逆序对
实现方法一:#include <iostream>#include<cstdio>#define maxn 10000int aa[maxn];using namespace std;int n;void Merge(int *A,int *B,int s,int m,int n){ int j,k; for(k=s,j=m+1; s<=m&&j<=n; k++)原创 2017-03-11 16:46:13 · 255 阅读 · 0 评论