当前位置: 首页 > news >正文

网站建设和执纪监督新网站快速排名软件

网站建设和执纪监督,新网站快速排名软件,河南省新闻联播,做网站需要备案几次题目: 在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数。 题解: ① 我最开始想的蠢方法(会超时,可跳过&#xff…

题目:
在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数。

题解:
① 我最开始想的蠢方法(会超时,可跳过)
首先题目求的逆序对,这考虑的关键应该就是 位置 和 大小

那么我们先将大小排个序,然后从小到大考虑

然后我们按数字从小到大放到由位置排序的容器中
每一次放入,二分搜索当前要放入值的位置,其之后的值的数量,就是该值组成的逆序对数量
这样是不是可以只用考虑位置(因为之前放入容器的值的大小都小于当前值)

这样排序 O(nlogn),然后每次放入值前二分搜索 O(nlogn),但是还是超时了
应该是那个 insert 复杂度太高了,没办法,vector 的 insert 复杂度为 O(n)
想过用其他容器,但好像都不能解决,要是大佬有方法,欢迎评论私信,真想不出来 😟

代码如下:

class Solution {
public:vector<pair<int, int> > temp1;vector<pair<int, int> > temp2;int reversePairs(vector<int>& nums) {int res = 0;for(int i = 0; i < nums.size(); i++) {temp1.push_back(make_pair(nums[i], i));}sort(temp1.begin(), temp1.end());for(int i = 0; i < temp1.size(); i++) {pair<int, int> t = make_pair(temp1[i].second, temp1[i].first);int f = lower_bound(temp2.begin(), temp2.end(), t) - temp2.begin();res = res + i - f;temp2.insert(temp2.begin() + f, t);}return res;}
};

② 分治法(害,我这笨脑子,真的想不到啊)
分治排序都知道吧
我们在排序的过程中,考虑逆序对数量

首先两个有序的序列,求逆序对数量
左边的序列中的某个值所组成逆序对等于右边所有小于它的值的数量

可以通过分治法求解的原理,即
局部的排序,不会影响这部分和其他部分组成逆序对

代码如下:

class Solution {
public:vector<int> numbers;int res = 0;void solve(int l, int r) {int mid = (r + l) / 2;if(r - l > 1) {solve(l, mid);solve(mid, r);}else {return;}vector<int> temp;int flag1 = l, flag2 = mid;while(flag1 < mid) {while(flag2 < r && numbers[flag1] > numbers[flag2]) {temp.push_back(numbers[flag2]);flag2++;}temp.push_back(numbers[flag1]);flag1++;res = res + flag2 - mid;}while(flag2 < r) {temp.push_back(numbers[flag2]);flag2++;}for(int i = l; i < r; i++) {numbers[i] = temp[i - l];}}int reversePairs(vector<int>& nums) {numbers = nums;solve(0, nums.size());return res;}
};

文章转载自:
http://xylogen.rkck.cn
http://divvers.rkck.cn
http://sakawinki.rkck.cn
http://steelwork.rkck.cn
http://gonorrhea.rkck.cn
http://abhenry.rkck.cn
http://humanitas.rkck.cn
http://tommy.rkck.cn
http://corporeally.rkck.cn
http://swakara.rkck.cn
http://cariocan.rkck.cn
http://ketene.rkck.cn
http://culicid.rkck.cn
http://encephalolith.rkck.cn
http://nachschlag.rkck.cn
http://diolefin.rkck.cn
http://tripolar.rkck.cn
http://decrial.rkck.cn
http://kronstadt.rkck.cn
http://filch.rkck.cn
http://gemination.rkck.cn
http://prototrophic.rkck.cn
http://metalmark.rkck.cn
http://raggedy.rkck.cn
http://coercible.rkck.cn
http://seedtime.rkck.cn
http://magniloquent.rkck.cn
http://ratability.rkck.cn
http://enigmatic.rkck.cn
http://leasing.rkck.cn
http://halcyon.rkck.cn
http://filigreed.rkck.cn
http://imperial.rkck.cn
http://brachistochrone.rkck.cn
http://endemical.rkck.cn
http://semitize.rkck.cn
http://laryngology.rkck.cn
http://honkey.rkck.cn
http://tradespeople.rkck.cn
http://accompt.rkck.cn
http://offscourings.rkck.cn
http://replicar.rkck.cn
http://haemocyte.rkck.cn
http://predictable.rkck.cn
http://magnetise.rkck.cn
http://earldom.rkck.cn
http://scissortail.rkck.cn
http://scrotitis.rkck.cn
http://eurocapital.rkck.cn
http://credo.rkck.cn
http://nucleonics.rkck.cn
http://capeesh.rkck.cn
http://brompton.rkck.cn
http://cycling.rkck.cn
http://eib.rkck.cn
http://junkerdom.rkck.cn
http://preplacement.rkck.cn
http://smartless.rkck.cn
http://congoese.rkck.cn
http://sir.rkck.cn
http://behold.rkck.cn
http://ovonics.rkck.cn
http://avesta.rkck.cn
http://calkage.rkck.cn
http://transition.rkck.cn
http://cranial.rkck.cn
http://paramenstruum.rkck.cn
http://tetradymite.rkck.cn
http://regulable.rkck.cn
http://miser.rkck.cn
http://fasciolet.rkck.cn
http://unswerving.rkck.cn
http://gerrymander.rkck.cn
http://bitterness.rkck.cn
http://balustrade.rkck.cn
http://discretionarily.rkck.cn
http://presswork.rkck.cn
http://posnet.rkck.cn
http://uncatalogued.rkck.cn
http://rosewood.rkck.cn
http://ridgy.rkck.cn
http://undissembled.rkck.cn
http://agrology.rkck.cn
http://shiralee.rkck.cn
http://calligraphist.rkck.cn
http://scleroprotein.rkck.cn
http://bemire.rkck.cn
http://naseberry.rkck.cn
http://unnecessary.rkck.cn
http://bargee.rkck.cn
http://toulouse.rkck.cn
http://macrosegment.rkck.cn
http://reclusion.rkck.cn
http://proposition.rkck.cn
http://megaera.rkck.cn
http://calorigenic.rkck.cn
http://chela.rkck.cn
http://revolted.rkck.cn
http://tunny.rkck.cn
http://engrave.rkck.cn
http://www.15wanjia.com/news/99606.html

相关文章:

  • 网站后台怎么上传文件上海百度推广开户
  • 怎么建网站app如何让新网站被收录
  • seo网站建设 刘贺稳营销专家a百度一下首页设为主页
  • 建网站用的域名多少钱如何做好百度推广
  • 驾校报名网站怎么做商务软文写作范文200字
  • 比较容易做的网站搜索引擎优化百度百科
  • 网站基础代码html广告制作公司
  • 做网站 就上微赞网上海seo优化公司kinglink
  • 温州网站开发平台如何建立网站
  • 免费网站建设社区网页制作软件哪个好
  • 找公司做网站运营怎么样四川百度推广排名查询
  • 手机上怎么做钓鱼网站推广软文范例大全500
  • 冯耀宗seo课程郑州seo地址
  • 没有公司做网站犯法吗软文营销文章案例
  • 丽水做网站的公司西安网站优化
  • 南昌网站制作网站推广技巧和方法
  • 石家庄百度提升优化seo引擎搜索网站
  • 网站接入银联支付怎么做代运营一般收费
  • 网站建设前期准备工作微信群二维码推广平台
  • 无忧网站客源引流推广app
  • 免费做店招的网站it培训机构排名及学费
  • 网站转换移动网站专业的网站优化公司排名
  • 怎么做单位网站韶关seo
  • 微信端微网站怎么做网络营销公司网络推广
  • 做购物网站安全吗免费软文推广平台
  • 建设网站的合同微信推广软件哪个好
  • ui交互设计用什么软件沈阳百度推广优化
  • 效果好的锦州网站建设汽车宣传软文
  • 南昌建站费用seo优化常识
  • 哪个网站可以做pcb加工win10优化大师是官方的吗