如何高效地判断数组中是否包含某特定值

author author     2022-09-14     135

关键词:

如何检查一个未排序的数组中是否包含某个特定的值,这是在Java中非常实用并且频繁使用的操作。另外,检查数组中是否包含特定值可以用多种不同的方式实现,但是时间复杂度差别很大。下面,我将为大家展示各种方法及其需要花费的时间。

1.检查数组中是否包含特定值的四种不同方法

  1. 使用List:
    1 public static boolean useList(String[] arr,String targetValue){
    2        return Array.asList(arr).contains(targetValue);      
    3 }

     

  2. 使用set
    1 public static boolean useSet(String[] arr, String targetValue) {
    2     Set<String> set = new HashSet<String>(Arrays.asList(arr));
    3     return set.contains(targetValue);
    4 }

     

  3. 使用一个简单循环
    public static boolean useLoop(String[] arr,String targetValue){
            for(String s:arr){
                if(s.equals(targetValue)){
                    return true;
                }
                }return false;
    }

     

  4. 使用Arrays.binarSearch()
    public static int binarySearch(int[] a, int key)
    使用二进制搜索算法来搜索指定的 int 型数组,以获得指定的值。必须在进行此调用之前对数组进行排序(通过上面的 sort 方法)。如果没有对数组进行排序,则结果是不明确的。如果数组包含多个带有指定值的元素,则无法保证找到的是哪一个。即使用Arrays.sort(a)  进行排序
    1     public static boolean useArraysBinarySearch(String[] arr,String target){
    2         Arrays.sort(arr);
    3         int a = Arrays.binarySearch(arr, target);
    4         if(a >= 0){
    5             return true;
    6         }else {
    7             return false;
    8         }
    9     }

    时间复杂度

     

java中如何高效判断数组中是否包含某个特定的值

四种不同方式检查数组是否包含某个值 使用List:publicstaticbooleanuseList(String[]arr,StringtargetValue){returnArrays.asList(arr).contains(targetValue);}  使用Set:publicstaticbooleanuseSet(String[]arr,Stringta 查看详情

如何高效判断java数组是否包含某个值

在java中,我们如何判断一个未排序数组中是否包含一个特定的值?这在java中是一个频繁非常实用的操作。那么什么样的方法才是最高效的方式?当然,这个问题在StackOverflow也是得票率非常高的一个问答。得票率排在最前的几个... 查看详情

在java中如何高效判断数组中是否包含某个元素

  如何检查一个数组(无序)是否包含一个特定的值?这是一个在Java中经常用到的并且非常有用的操作。同时,这个问题在StackOverflow中也是一个非常热门的问题。在投票比较高的几个答案中给出了几种不同的方法,但是他们的时... 查看详情

在java中如何高效判断数组中是否包含某个元素

如何检查一个数组(无序)是否包含一个特定的值?这是一个在Java中经常用到的并且非常有用的操作。同时,这个问题在StackOverflow中也是一个非常热门的问题。在投票比较高的几个答案中给出了几种不同的方法,但是他们的时间... 查看详情

怎样高效地去判断array中是否包含某个值?

问题怎样去判断Array(无序)中是否包含某个值呢?这是一个在Java中经常被问到的问题。它也是StackOverflow上投票前几的一个问题。下面将展示投票前几的几个回答,这些回答使用不同的方式解决了这个问题,但是,时间复杂度... 查看详情

在java中如何高效的判断数组中是否包含某个元素(代码片段)

importorg.apache.commons.lang3.ArrayUtils;publicstaticbooleanuseArrayUtils(String[]arr,StringtargetValue)returnArrayUtils.contains(arr,targetValue);  查看详情

javascript的in操作符(“如何判断某值是否数组中的元素”?)

 在编写JavaScript时,遇到一个常见的问题“如何判断某值是否数组中的元素”?这让我想起了PHP中的in_array()函数和Python中in操作符。但JavaScript似乎没有内置类似的函数,而其in操作符的作用也有点不同。通过查询相关的资料... 查看详情

如何检查数组列表是不是包含特定的字符串值? [复制]

】如何检查数组列表是不是包含特定的字符串值?[复制]【英文标题】:HowcanIcheckifarraylistcontainsaparticularstringvalue?[duplicate]如何检查数组列表是否包含特定的字符串值?[复制]【发布时间】:2020-12-3021:18:42【问题描述】:如何检查... 查看详情

js中如何判断数组中是不是包含某一元素

可以直接使用数组的indexOf方法来判断,如果元素存在于数组中,那么返回元素在数组中的下标值,如果不存在,那么返回-1,但是该方法在某些版本的IE中是不起作用,所以建议使用jquery的inArray方法,该方法返回元素在数组中的... 查看详情

如何比较纯数字数列中的数字大于某一个数.python?

在Python语言中,判断一个数组中是否存在某一个元素。程序猿可以使用in操作符进行判断。in操作符除了做判断。在特定的情况下还有特殊的作用。详细内容如下图所示。Python语言:in操作符的语法格式。语法:keyinstr。其中key为... 查看详情

js判断某变量是否为某数组中的一个值的几种方法

1.正则表达式js 中判断某个元素是否存在于某个js数组中,相当于 PHP 语言中的in_array函数。Array.prototype.in_array=function(e){  var r=new RegExp(‘,‘+e+‘,‘);   return (r.test(‘,‘+this.join(this.S)+‘,‘)) 查看详情

如何更高效地编写这个 Flutter 代码?

】如何更高效地编写这个Flutter代码?【英文标题】:HowtowritethisFluttercodemoreefficiently?【发布时间】:2020-01-1807:41:47【问题描述】:正如您在第一部分中看到的,我正在检查某个值是否包含在来自Firestore的文档中并返回一个布尔值... 查看详情

sql扫描数组

扫描数组如需检查数组是否包含特定值,请结合使用IN运算符和UNNEST。如需检查数组是否包含与某条件匹配的值,请结合使用EXISTS函数和UNNEST。扫描特定值如需扫描数组中的特定值,请将IN运算符与UNNEST结合使用。示例以下示例... 查看详情

js判断某变量是否为某数组中的一个值的3种方法(代码片段)

1.正则表达式js中判断某个元素是否存在于某个js数组中,相当于PHP语言中的in_array函数。1Array.prototype.in_array=function(e)2varr=newRegExp(‘,‘+e+‘,‘);3return(r.test(‘,‘+this.join(this.S)+‘,‘));4; 用法如下:1vararr=newArray([‘b‘,2,‘a‘, 查看详情

如果 Json 数组包含特定值,如何检查它?

】如果Json数组包含特定值,如何检查它?【英文标题】:HowdoIcheckJsonarrayifitcontainsspecificvalue?【发布时间】:2020-11-1408:56:45【问题描述】:如何检查Json数组是否包含特定值?这是我加载数据的代码:dynamicd=JObject.Parse("number:1000,str... 查看详情

算法--判断数组中是否有重复值

...重复值  第14节重复值判断练习题 请设计一个高效算法,判断数组中是否有重复值。必须保证额外空间复杂度为O(1)。给定一个int数组A及它的大小n,请返回它是否有重复值。测试样例:[1,2,3,4,5,5,6],7返回:trueJava(javac1.7... 查看详情

gorm判断json数组是否包含某元素(代码片段)

...data"`2.使用JSON_CONTAINS()MySQLJSON_CONTAINS()函数可以用于判断JSON数组中是否包含某个元素。我们可以使用原生SQL作为GORM的内联条件来判断数组中是否包含某值。varrows[]MyModelDB.Where(fmt.Sprintf(`JSON_CONTAINS(data,'"%v"')`... 查看详情

gorm判断json数组是否包含某元素(代码片段)

...data"`2.使用JSON_CONTAINS()MySQLJSON_CONTAINS()函数可以用于判断JSON数组中是否包含某个元素。我们可以使用原生SQL作为GORM的内联条件来判断数组中是否包含某值。varrows[]MyModelDB.Where(fmt.Sprintf(`JSON_CONTAINS(data,'"%v"')`... 查看详情