数组中
来源:互联网 发布:淘宝没有购物车营销 编辑:程序博客网 时间:2024/06/02 08:36
public class Solution { long count=0; public int InversePairs(int [] array) {int length = array.length; if(length<=1) return 0; merge_sort(array, 0, length-1); return (int)(count%1000000007l); } public void merge_sort(int[] array,int left,int right){ if(left<right){ int mid = (left+right)>>1; merge_sort(array, left, mid); merge_sort(array, mid+1, right); merge(array, left, mid, right); } } public void merge(int[] array,int left,int mid,int right){ int i = left,j=mid+1,k=0; int[] temp = new int[right-left+1]; while(i<=mid&&j<=right){ if(array[i]>array[j]){ count+=mid-i+1; temp[k++] = array[j++]; //k++是为了保证从0开始,不要和++k混淆 }else{ temp[k++]=array[i++]; } } while(i<=mid) temp[k++]=array[i++]; while(j<=right) temp[k++]=array[j++]; for(i=0;i<k;i++) array[left+i]=temp[i]; }}
0 0
- 数组中
- 数组中插入另一个数组
- COM中使用数组
- COBOL中数组操作
- COBOL中数组操作
- 谈谈Java中数组
- C#中二维数组
- axis2中传递数组
- java中数组基础
- C#中定义数组
- Javascript 中数组排序
- JScript中使用数组
- Oracle中构造数组
- JScript中创建数组
- 数组中求最大值
- JavaScript中数组方法
- C中读取数组
- JavaScript 中数组排序
- Android MVP
- nodejs 模块的流程
- Struts中<s:debug/>标签中ValueStack与ContextStack的区别
- 新建JSP页面时报错The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path
- memcache与memcached的区别
- 数组中
- 微信小程序一(开始构建)
- js对子节点操作
- UITableView中Group的顶部出现空白
- MySQL Docker 单一机器上如何配置自动备份
- 3075 走捷径
- Android官方开发文档Training系列课程中文版:线程执行操作之线程间通讯
- Java递归实现字符串全排列
- 异常的基本概念