归并类型题
归并可以解决求每个数字前面有多少个比他大或者比他小的总数问题。
归并时间复杂度:O(NlogN)
归并思想:将数组分成两部分,前半部分进行归并,后半部分归并,之后merge两部分,在merge中两个指针指向左右两部分(外排),利用一个额外的数组,左边的小就先拷贝左边,否则拷贝右边。(类似有序链表的合并)
//【归并排序】
void gui(vector<int>& nums, int left, int right) {
if(right - left <= 1 |
原创
2022-03-20 15:31:53 ·
892 阅读 ·
0 评论