一.最简单的查找元素方法(依次比较):给一个数组,在数组里面查找某个元素在数组中的位置,并返回它的位置。

public static void main(String[] args) {int arr[] = new int[]{12, 4, 54, 57, 87, 3, 41, 1, 3, 4, 1, 3, 4, 31, 2};getIndex(arr ,54);
}public static int getIndex(int[] arr, int key) {for (int i = 0; i < arr.length; i++) {if (key == arr[i]) {System.out.println("这个数值在数组中,且在第"+(i+1)+"个位置");return i;}}System.out.println("这个数值不在数组中");return 0;
}

特点,通用,但是这个效率太慢,需要从第一个元素依次比较。

二.查找一个数值是否在这个数组里面,若存在返回它所在位置,若不存在它应该有序数组在什么位置:(折半查找)

public class ShuZuFind {public static void main(String[] args) {int arr[] = new int[]{12, 4, 54, 57, 87, 3, 41, 1, 3, 4, 1, 3, 4, 31, 2};for (int i = 0; i < arr.length - 1; i++) {for (int j = 0; j < arr.length-1-i; j++) {if (arr[j] > arr[j + 1]) {int temp = arr[j];arr[j] = arr[j + 1];arr[j + 1] = temp;}}}System.out.println(Arrays.toString(arr));getIndex(arr, 54);}public static int getIndex(int[] arr, int key) {int min = 0;int max = arr.length - 1;while (min <= max) {int mid = (min + max) / 2;if (key > arr[mid])min = mid + 1;else if (key < arr[mid])max = mid - 1;else {System.out.println("该数值存在于数组,且在第" + (mid+1) + "位置");return mid;}}System.out.println("该数值不存在于数组,它应该位于第"+(min+1) +"个位置处");return min;}

这里我们先用冒泡算法就行排序,再用折半查找进行索引。我们来看看结果:1.输入54看看结果,

2.输入10看看结果,

3.输入-1看看结果,

三.在上面的基础上,将这个数值按大小放进这个有序数组,生成新的有序数组,看看代码:(插入数值得到新数组)

 //将数值放入数组中,生成新的有序数组
public static void newArr(int[] arr, int mid, int key) {int[] arr02 = new int[arr.length + 1];     //定义一个新数组,大于下标的数后移一位int mid01 = mid-1;arr02[mid01] = mid;for (int i = 0; i < arr02.length; i++) {if (i < mid01) {                       //当下标小于需要插入的位置时,赋原来数组的值arr02[i] = arr[i];} else if (i == mid01)                 //当下标等于需要插入的位置时,赋插入的值arr02[i] = key;else {                                 //当下标大于需要插入的位置时,赋原来数组的值arr02[i] = arr[i - 1];}}System.out.println(Arrays.toString(arr02));
}

得到结果是:

数组中查找並返回数组_java数组查找常见情况相关推荐

  1. 【JS实战】移除数组中的元素(返回新的数组)

    移除数组中的元素(返回新的数组) 方法一:for循环+push function remove(arr, item) {let newArr = [];for(let i = 0; i < ar ...

  2. php函数从数组中取出指定的数目,PHP数组函数

    1.array_rand()从数组中随机取出一个或多个元素(返回值是:随机元素的键)$arr=['js','css',25,'php',30]; printf(' %s ',print_r($arr, ...

  3. php删除数组中的空元素_PHP | 从数组中删除所有出现的元素

    php删除数组中的空元素 Given an array and we have to remove all occurrences of an element from it. 给定一个数组,我们必须 ...

  4. asp数组中REDIM的用法(动态数组)

    asp数组中REDIM的用法(动态数组) 动态数组里面的一个语句,只能出现在过程里面,可以多次使用.可以改变数组大小,和维数 格式: REDIM [Preserve] 数组名(下标1[下标2....] ...

  5. 数组中哪些常用方法会修改原数组

    一.不会改变原来数组的有: concat() concat() 方法用于连接两个或多个字符串. 该方法没有改变原有字符串,但是会返回连接两个或多个字符串新字符串. every() every() 方法 ...

  6. vba 跳到下一个循环_VBA野知识分享:从一个数组中取部分值生成新数组,不使用循环的思路...

    从一个数组中取部分值生成新数组,要实现此需求通常都是采用循环的方法来完成,那有没有更简易的思路呢? 借用jscript可以实现,直接取值,不用循环.例如从100000万中元素是取8000个值出来生成新 ...

  7. C语言向有序数组中插入一个数使该数组仍保持有序

    C语言向有序数组中插入一个数使该数组仍保持有序 #include<stdio.h> int main() {     int n,i,j,t,k;     printf("您喜欢 ...

  8. 取原始数组中的指定数据push新数组

    <!DOCTYPE html> <html><head><meta charset="utf-8"><title>取原始 ...

  9. 利用for循环把遍历数组中的元素依次获取出来 数组笔记及基本知识点

    利用for循环把遍历数组中的元素依次获取出来 数组索引号从0开始 所以i必须从0开始  i<6 <script>var arr = ['blue', 2, true, 4, 5, 6 ...

最新文章

  1. 【经验】对一个合格C++高级工程师(音视频方向)的要求
  2. 聊一聊:下班后的消息,要不要回?
  3. python 数据分析学什么-利用Python做数据分析 需要学习哪些知识
  4. 如何掌握并在实践中自如运用设计模式
  5. 【OS学习笔记】十九 保护模式六:保户模式下操作系统内核如何加载用户程序并运行
  6. python爬虫淘宝手机_【Python3 爬虫】14_爬取淘宝上的手机图片
  7. ArcUser 2006第2期拾零
  8. Mysqldump命令参数介绍
  9. 文末送书 | 自动机器学习(AutoML):方法、系统与挑战
  10. cast函数_关闭RTTI后dynamic_cast和typeid报异常
  11. 用php的for循环画椭圆,如何快速简单的使用css3画出各种各样的椭圆
  12. 如何生成1-1000的数字,并且顺序打乱
  13. 人机协作机器人发展趋势_一文了解全球工业机器人发展现状:轻型化、柔性化及人机协作成为发展趋势...
  14. Broadcast variabies-广播变量
  15. [MySQL FAQ]系列 -- 如何利用触发器实现账户权限审计
  16. Django学习-19-缓存
  17. 华为2台3928千兆电口对接trunk启不来
  18. java file文件删除_Java File.delete 删除文件
  19. 太牛了,值得收藏!7000字22张图,精讲 Redis 知识!
  20. 台湾 计算机术语,快取,陣列,程式,这些台湾的计算机术语,你知道几个?|冷知识...

热门文章

  1. Apache Lucene拼写检查器的“您是不是要”功能
  2. python支持复数以及相关的运算吗_Python: 复数的数学运算
  3. Struts2请求处理的内部流程说明(版本二)
  4. 使用IDEA的Spring Initializr创建SpringBoot工程
  5. g30u盘启动 中科曙光1620_I620-G30
  6. window部署python项目_Django在Window下的部署
  7. java 实例对象拷贝,实例详解java对象拷贝
  8. C 语言中std::array的神奇用法总结
  9. tp5怎么生成短链接_请问在tp5中怎样才能使用url函数?
  10. python 配置文件中密码不能是明文_配置文件中明文密码改为密文密码的方法