zoukankan      html  css  js  c++  java
  • 检查数组是否包含某个值的方法

    检查数组是否包含某个值的方法
    使用List
    publicstaticbooleanreturn Arrays.asList(arr).contains(targetValue); }
    使用Set
    publicstaticsetnew HashSet<String>(Arrays.asList(arr)); returnset.contains(targetValue); }
    使用循环判断
    publicstaticbooleanforifreturntrue; } returnfalse; }
    使用 Arrays.binarySearch()
    publicstaticbooleanint a = Arrays.binarySearch(arr, targetValue); if0returntrue; elsereturnfalse; }
    时间复杂度
    publicstaticvoidnew"CD""BC""EF""DE""AB"}; //use listlong startTime = System.nanoTime(); forint0100000; i++) { useList(arr, ); } long endTime = System.nanoTime(); long duration = endTime - startTime; System.out"useList: "1000000); //use set startTime = System.nanoTime(); forint0100000; i++) { useSet(arr, ); } endTime = System.nanoTime(); duration = endTime - startTime; System.out"useSet: "1000000); //use loop startTime = System.nanoTime(); forint0100000; i++) { useLoop(arr, ); } endTime = System.nanoTime(); duration = endTime - startTime; System.out"useLoop: "1000000); //use Arrays.binarySearch() startTime = System.nanoTime(); forint0100000; i++) { useArraysBinarySearch(arr, ); } endTime = System.nanoTime(); duration = endTime - startTime; System.out"useArrayBinary: "1000000); }
    : : : :
    使用一个长度为1k的数组
    new1000]; Random s = new Random(); forint01000; i++){ arr[i] = String.valueOf(s.nextInt()); }
    : : : :
    使用一个长度为10k的数组
    new10000]; Random s = new Random(); forint010000; i++){ arr[i] = String.valueOf(s.nextInt()); }
    : : : :
     
    总结
    Arrays.binarySearch()使用 ArrayUtils
    ArrayUtilscontainsimport org.apache.commons.lang3.ArrayUtils; publicstaticbooleanreturn ArrayUtils.contains(arr,targetValue); }
  • 相关阅读:
    C/C++ 避免使用宏
    单片机 数码管的发光
    单片机 74HC573锁存器和周期
    单片机 中断
    串口通信
    单片机 键盘
    C++中 运算符和函数的区别
    单片机 中断( 定时器/计数器详说 )
    C++ 接收数量不定的函数参数
    工作流错误:The workflow failed to start due to an internal error.
  • 原文地址:https://www.cnblogs.com/luxd/p/5976761.html
Copyright © 2011-2022 走看看