需要排序的最短子数组长度
2016-03-09 22:16
323 查看
/**
* 需要排序的最短子数组长度
* @author Administrator
* 如 arr=[1,5,3,4,2,6,7] 返回4 因为只有[5,3,4,2]需要排序
*/
public class getMinLength {
public static void main(String[] args) {
int[] arr = {1,5,3,4,2,6,7};
System.out.println(getMinlength(arr));
}
}
* 需要排序的最短子数组长度
* @author Administrator
* 如 arr=[1,5,3,4,2,6,7] 返回4 因为只有[5,3,4,2]需要排序
*/
public class getMinLength {
public static void main(String[] args) {
int[] arr = {1,5,3,4,2,6,7};
System.out.println(getMinlength(arr));
}
public static int getMinlength(int[] arr){ if(arr==null||arr.length==0){ return 0; } int length = arr.length; int min = arr[length-1]; int noMinIndex = -1; for(int i=length-2; i>=0; i--){ if(arr[i]>min){ noMinIndex = i; }else{ min = Math.min(min, arr[i]); } } if(noMinIndex==-1){ return 0; } int max = arr[0]; int noMaxIndex = -1; for(int i=1; i<length; i++){ if(arr[i]<max){ noMaxIndex = i; }else{ max = Math.max(max, arr[i]); } } return noMaxIndex-noMinIndex+1; }
}
相关文章推荐
- H-AMMO
- [译]A Verlet based approach for 2D game physics - Part Three
- 找工作——乱七八糟
- 内连接和外连接的区别
- Tomcat6.0数据库连接池配置
- 《JAVA与模式》之观察者模式
- hdu 4514 树形dp hdu-4514 湫湫系列故事——设计风景线
- Android 解决65535的限制
- UITableView代理方法
- IT小小鸟阅读笔记
- resultSet,resultSetMetaData,list查询结果 的使用测试
- CSS Position属性
- 给定一个无序数组,找到其中最小的K个数
- BIOS调查笔记
- 如何成功?但行实事,莫问前程
- 练习-ubuntu装机笔记
- 导航栏下的空白位置偏移
- uva757 - - Gone Fishing
- leetcode83.RemoveDuplicatesFromSortedList
- Serializable 和 Parcelable两种方式传递对象