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

电脑如何做穿透外网网站/网站推广的优化

电脑如何做穿透外网网站,网站推广的优化,ios移动网站开发详解,浙江建设技术职业学院网站题目链接 315. 计算右侧小于当前元素的 个数 - 力扣(LeetCode) 题目解析 计算数组里面所有元素右侧比它小的数的个数, 并且组成一个数组,进行返回 算法原理 归并解法(分治) 当前元素的后面, 有多少个比我小(降序) 我们要找到第一比左边小的元素, 这…

题目链接

315. 计算右侧小于当前元素的
个数 - 力扣(LeetCode)

题目解析

计算数组里面所有元素右侧比它小的数的个数, 并且组成一个数组,进行返回

算法原理

归并解法(分治)

当前元素的后面, 有多少个比我小(降序)

我们要找到第一比左边小的元素, 这样就可以找到一堆比左边小的元素: right - cur2+1

nums[cur1]对应的位置,里面的ret[原始下标]+=right-cur2+1

此时我们就需要找到数组原始的下标,然后把数记上

我们使用一个数组的每一个元素来一一对应记录nums每个元素的下标

然后在每一次归并排序,排完后,下标也跟着变

细节问题, 在创建辅助数组进行合并的时候, 需要创建俩个辅助数组, 一个给nums,一个给index,因为俩个数组是同步改变的

代码编写

class Solution {int[] ret;//记录结果int[] index; // 标记 nums 中当前元素的原始下标int[] tmpIndex;// 记录临时数组的值int[] tmpNums;//记录临时下标的值public List<Integer> countSmaller(int[] nums) {int n = nums.length;ret = new int[n];index = new int[n];tmpIndex = new int[n];tmpNums = new int[n];
// 初始化 index 数组for (int i = 0; i < n; i++)index[i] = i;mergeSort(nums, 0, n - 1);List<Integer> l = new ArrayList<Integer>();for (int x : ret)l.add(x);return l;}public void mergeSort(int[] nums, int left, int right) {if (left >= right) return;
// 1. 根据中间元素划分区间int mid = (left + right) / 2;
// [left, mid] [mid + 1, right]
// 2. 处理左右两个区间mergeSort(nums, left, mid);mergeSort(nums, mid + 1, right);
// 3. 处理⼀左⼀右的情况int cur1 = left, cur2 = mid + 1, i = 0;while (cur1 <= mid && cur2 <= right) // 降序排序{if (nums[cur1] <= nums[cur2]) {tmpNums[i] = nums[cur2];tmpIndex[i++] = index[cur2++];} else {ret[index[cur1]] += right - cur2 + 1; // 重点tmpNums[i] = nums[cur1];tmpIndex[i++] = index[cur1++];}}
// 4. 处理剩余的排序⼯作while (cur1 <= mid) {tmpNums[i] = nums[cur1];tmpIndex[i++] = index[cur1++];}while (cur2 <= right) {tmpNums[i] = nums[cur2];tmpIndex[i++] = index[cur2++];}for (int j = left; j <= right; j++) {nums[j] = tmpNums[j - left];index[j] = tmpIndex[j - left];}}
}

http://www.whsansanxincailiao.cn/news/32000394.html

相关文章:

  • 设计师做单页的网站/宁波网站推广优化外包
  • 接做网站需要问什么软件/提高seo关键词排名
  • 只做特卖的网站/做网站需要什么条件
  • 新疆生产建设兵团煤矿安全监察局网站/搜索引擎广告推广
  • 网站建设是固定资产还是列费用/加强服务保障满足群众急需m
  • 怎么找做网站的人/百度竞价关键词质量度怎么提升
  • 淘宝网站打算找人做/山西seo和网络推广
  • 网站宽度设计/湖北百度关键词排名软件
  • 网站建设需要注册什么类型的公司/广州专门做网站
  • 邯郸贴吧网站/公司做网站推广
  • 江苏建设厅厅长徐其耀/宁波seo优化排名
  • 小程序开发文档说明/内部搜索引擎优化
  • 杭州市政府门户网站/搜索引擎
  • 个人网站推广渠道 微博 贴吧/一个万能的营销方案
  • pandorabox做网站/友情链接平台
  • 公司名字大全2022/保定seo外包服务商
  • 男女直接做性视频网站/微信营销怎么做
  • 汽车网站 源码/北京营销型网站
  • 购物形式网站制作/广告宣传费用一般多少
  • 长春 网站建设/没经验怎么开广告公司
  • 做自己的网站要多久/百度账号怎么改名字
  • 网站地址url是什么意思/百度贴吧官网网页
  • 网站可以做无形资产/怎样推广产品
  • 购物网站 功能/南宁seo网站排名优化公司
  • 美女做暧暧网站/谷歌搜索引擎下载安装
  • 天河建设网站报价/产品如何推广
  • 网站地图如何制作/北京网站建设公司案例
  • wordpress网站图片加速/跨界营销案例
  • 深圳建设网站公/市场推广方案模板
  • 如何做中英文切换的双语网站/seo待遇