Java 实现判定顺序表中是否包含某个元素(思路详解)

 更新时间:2023年06月05日 09:10:06   作者:酒國  
这篇文章主要介绍了Java 实现判定顺序表中是否包含某个元素,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

一、思路

1.定义一个toFind变量来传入要查找的元素
2.遍历整个顺序表并判定当前下标的元素等不等于toFind
3.如果等于就返回一个true,否则返回false。

二、图解

首先调用以下的方法求出顺序表的长度,再使用 for 循环遍历每一个元素。

// 求顺序表的长度
public int size() {
    // 直接返回元素个数
    return this.usedSize;
}

当遍历到第一个元素的时候,发现此时的元素为 12 不等于 toFind ,因此继续往下查找。

当 i 走到下一个元素的时候,发现此时依然不等于 toFind 的值,因此继续向后找。

发现此时 i 下标的值等于了 toFind 的值,因此也就说明顺序表中是有 toFind 这个元素的,
返回 true 即可。

如果遍历了整个顺序表后,都没有找到与 toFind 相等的元素,那就说明顺序表中没有这个元素,
返回 false 即可。

当前 i 走到 3 下标后发现此时是空的,那就说明顺序表已经遍历完毕了。

三、代码

//判定是否包含某个元素 - toFind是我要判定的元素
public boolean contains(int toFind) {
    //size()方法求的是顺序表的长度
    for (int i = 0; i < this.size(); i++) {
        if (this.elem[i] == toFind) {
            return true; //找到了
        }
    }
    return false;///没找到
}
// 求顺序表的长度
public int size() {
    // 直接返回元素个数
    return this.usedSize;
}

以上是我当前顺序表中的元素。

判断当前顺序表中是否有 3 和 1000 这两个元素,鉴于以上顺序表中的元素可以到结论。
会先输出一个 true,再输出一个 false。

可以看到此时输出结果是正确的。

到此这篇关于Java 实现判定顺序表中是否包含某个元素的方法的文章就介绍到这了,更多相关Java判定顺序表是否包含某个元素内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java内部排序之插入排序与交换排序详解

    Java内部排序之插入排序与交换排序详解

    这篇文章主要介绍了Java内部排序之插入排序与交换排序详解,排序是将任意序列重新排列按照关键字有序,排序根基存储器的不同分为内部排序、外部排序,排序根据关键字分为稳定排序、不稳定排序,需要的朋友可以参考下
    2023-12-12
  • Java 数据结构与算法系列精讲之二叉堆

    Java 数据结构与算法系列精讲之二叉堆

    二叉堆是一种特殊的堆,其实质是完全二叉树。二叉堆有两种:最大堆和最小堆。最大堆是指父节点键值总是大于或等于任何一个子节点的键值。而最小堆恰恰相反,指的是父节点键值总是小于任何一个子节点的键值
    2022-02-02
  • SpringBoot整合SSO(single sign on)单点登录

    SpringBoot整合SSO(single sign on)单点登录

    这篇文章主要介绍了SpringBoot整合SSO(single sign on)单点登录,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-06-06
  • java中的Timer和Timertask的关系解读

    java中的Timer和Timertask的关系解读

    本文详细介绍了Java中的Timer和TimerTask类,包括它们之间的关系、API的使用方法、注意事项以及操作案例,Timer是一个调度器,而TimerTask是具体的任务类,Timer仅对应一个线程,不保证任务执行的精确性,但线程安全,一个Timer可以调度多个TimerTask
    2024-12-12
  • Java子类对象的实例化过程分析

    Java子类对象的实例化过程分析

    这篇文章主要介绍了Java子类对象的实例化过程,结合具体实例形式分析了java子类对象的实例化的步骤、原理、实现方法,需要的朋友可以参考下
    2019-09-09
  • java中的Lambda表达式使用及说明

    java中的Lambda表达式使用及说明

    文章介绍了Java 8中Lambda表达式的基本概念及其在Stream流操作中的应用,Lambda表达式简化了函数式接口的实现,与Stream结合使用更流畅,文章还提供了Lambda表达式的各种简化技巧和注意事项,如方法引用、变量捕获规则以及异常处理等
    2026-05-05
  • Spring操作JdbcTemplate数据库的方法学习

    Spring操作JdbcTemplate数据库的方法学习

    这篇文章主要为大家介绍了Spring操作JdbcTemplate数据库方法学习,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-05-05
  • SpringBoot整合Redis实现序列化的7种策略详解

    SpringBoot整合Redis实现序列化的7种策略详解

    在分布式系统中,Redis作为高性能的缓存和数据存储解决方案被广泛应用,本文将介绍SpringBoot中Redis的7种序列化策略,有需要的小伙伴可以根据需求进行选择
    2025-04-04
  • 在eclipse中使用SVN的实现方法(图文教程)

    在eclipse中使用SVN的实现方法(图文教程)

    这篇文章主要介绍了在eclipse中使用SVN的实现方法(图文教程),文中通过图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • Java设计模式中的工厂模式详解

    Java设计模式中的工厂模式详解

    这篇文章主要介绍了Java设计模式中的工厂模式详解,工厂方法模式(Factory Method Pattern):创新型模式之一,简称工厂模式,通过定义工厂父类负责定义创建对象的公共接口,而子类则负责生成具体的对象,需要的朋友可以参考下
    2023-09-09

最新评论