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

作者:酒國 时间:2023-09-11 01:03:04 

一、思路

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

二、图解

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

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

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

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

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

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

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

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

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

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

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

当前 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;
}

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

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

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

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

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

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

来源:https://blog.csdn.net/m0_63033419/article/details/131037879

标签:Java,顺序表,是否包含某个元素
0
投稿

猜你喜欢

  • C#回收机制之资源回收托管

    2022-03-04 13:18:20
  • Java系统的高并发解决方法详解

    2021-08-23 08:39:50
  • Java比较两个对象大小的三种方法详解

    2021-07-11 18:55:16
  • Android实现数字跳动效果的TextView方法示例

    2023-05-24 16:54:29
  • Android仿QQ空间动态界面分享功能

    2023-11-13 11:03:58
  • IDEA 2020.1 版自动导入MAVEN依赖的方法(新版MAVEN无法自动导入/更新POM依赖、MAVEN设置自动更新、自动更新快捷键)

    2022-08-27 09:31:22
  • Android选择图片或拍照图片上传到服务器

    2022-12-15 01:48:41
  • Java class文件格式之特殊字符串_动力节点Java学院整理

    2022-02-11 14:45:59
  • 全面了解Java中的内部类和匿名类

    2023-01-05 09:14:23
  • android实现简单的画画板实例代码

    2023-02-21 05:46:02
  • Flutter 实现虎牙/斗鱼 弹幕功能

    2023-07-11 04:11:11
  • Java Synchronized的偏向锁详细分析

    2021-07-09 00:35:23
  • Intellij Idea中批量导入第三方jar包的全过程

    2022-01-29 03:14:26
  • 关于Java整合RocketMQ实现生产消费详解

    2022-12-31 07:44:34
  • C#使用Clipboard类实现剪贴板功能

    2022-09-29 06:03:54
  • 导入项目出现Java多个工程相互引用异常A cycle was detected in the build path of project的解决办法

    2023-06-26 16:27:17
  • Android拼图游戏 玩转从基础到应用手势变化

    2021-08-24 02:41:59
  • C#保存listbox中数据到文本文件的方法

    2023-02-20 10:37:27
  • 浅谈JVM之java class文件的密码本

    2023-05-28 13:02:39
  • Java ExecutorService四种线程池使用详解

    2023-05-17 07:12:56
  • asp之家 软件编程 m.aspxhome.com