返回顶部

收藏

Java操作数组的常用算法总结

更多
public class BaseAlgorithm {  

    public static void main(String[] args) {  
        int[] arr = { 1, 7, 3, 30, 55, 21, 3, 5, 1, 7, 3 };  
        System.out.println(findMaxValue(arr));  
        System.out.println(findMostValue(arr));  
        System.out.println(findMaxLen(arr));  
    }  

    /** 
     * 找出数组中最大元素 
     */  
    public static int findMaxValue(int[] arr) {  
        int max = arr[0];  
        for (int i = 1; i < arr.length; i++) {  
            if (arr[i] > max) {  
                max = arr[i];  
            }  
        }  
        return max;  
    }  

    /** 
     * 找出数组中重复出现最多的元素 
     */  
    public static int findMostValue(int[] arr) {  
        // 出现最多次数  
        int most = 0;  
        // 出现最多次数的数组下标  
        int index = 0;  
        for (int i = 0; i < arr.length; i++) {  
            int temp = 1;  
            for (int j = i; j < arr.length; j++) {  
                if (arr[i] == arr[j]) {  
                    temp++;  
                }  
            }  
            if (temp > most) {  
                most++;  
                index = i;  
            }  
        }  
        System.out.println("最多出现了" + most + "次");  
        return arr[index];  
    }  

    /** 
     * 找出最长连续递增序列的长度 
     */  
    public static int findMaxLen(int[] arr) {  
        int maxLen = 1;  
        int temp = 1;  
        for (int i = 0; i < arr.length - 1; i++) {  
            if (arr[i + 1] >= arr[i]) {  
                temp++;  
            } else {  
                if (temp > maxLen) {  
                    maxLen = temp;  
                }  
                temp = 1;  
            }  
        }  
        return maxLen;  
    }  

}  

标签:java

收藏

0人收藏

支持

0

反对

0

相关聚客文章
  1. 博主 发表 2018-03-13 03:54:02 Spring AOP 实现读写分离
  2. 博主 发表 2018-03-08 07:07:56 Java 多线程开发之 Callable 与线程池(三)
  3. 博主 发表 2018-02-22 04:29:47 Dubbo 基础教程
  4. 博主 发表 2018-01-27 14:54:24 Spring Boot 入门之消息中间件篇(五)
  5. 博主 发表 2018-01-19 15:49:04 RabbitMQ 工作模式介绍
  6. 博主 发表 2018-01-21 14:08:44 Maven 实现环境隔离
  7. 博主 发表 2018-01-18 10:12:51 Lombok 简单入门
  8. 博主 发表 2018-03-16 03:07:54 Java 多线程开发之原子变量与 CAS 算法(二)
  9. 博主 发表 2018-01-15 08:43:01 Java 多线程开发之 volatile(一)
  10. 博主 发表 2018-01-06 03:29:48 WireMock 简单入门
  11. 博主 发表 2017-12-20 08:10:32 Shiro 实现 Tomcat 集群的 Session 共享
  12. 博主 发表 2017-12-20 05:22:49 Shiro 基础教程

发表评论