数组元素查找(查找指定元素第一次在数组中出现的索引)

import java.util.Scanner;

/*
 * 需求:数组元素查找(查找指定元素第一次在数组中出现的索引)
 *   (1)给定数组int[] arr={5,7,3,2,5}
 *   (2)要查询的元素通过键盘录入的方式确定
 *   (3)定义一个查找数组元素第一次出现位置的方法(注:要查找的元素就是键盘录入的数据)
 *
 *分析:
 *    A:定义数组int[] arr={5,7,3,2,5};
 *    B:键盘录入一个被查询的数据
 *    C:写方法实现查找指定元素在数据中第一次出现的索引
 *                 遍历数组,依次比较元素,如果相等,就把该处的索引返回即可
 *    D:调用方法,输出结果
 *
 */
public class Test8 {
    public static void main(String[] args) {
        //定义1个数组
        int[] arr= {5,7,3,2,5};
        //键盘录入数据
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入要查找的元素:");
        int num=sc.nextInt();
        int index=getIndex(arr,num);
        System.out.println("索引是"+index);
    }
//写方法 明确返回值int 明确参数列表int[] arr,int value
    public static int getIndex(int[] arr,int value)
    {
        //遍历数组
        for(int x=0;x<arr.length;x++)
        {
            if(arr[x]==value)
            {
                return x;
            }
        }
        //没找到返回-1
        return -1;
    }
}

原文地址:https://www.cnblogs.com/long-holiday/p/10120560.html

时间: 2024-11-07 11:06:54

数组元素查找(查找指定元素第一次在数组中出现的索引)的相关文章

数组的创建/查找数组里面的内容/添加数组中元素/使用指定的字符串把数组链接起来/判断数组内是否有指定的数组元素/四种遍历进行输出数组中的元素有哪些

#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { //创建数组 //1.快速创建数组@[] NSArray*[email protected][@"month",@"tue",@" wed",@"fir"]; //2,创建空的数组 NSArray*arr=[[NSArray a

动态创建元素插入到指定元素的前边

我们一般用原生js创建元素用document.creatElement方法,创建完毕之后一般用appendChild方法添加到元素里边,不过这种方法会自动添加到元素的末尾. 如果我们想添加到元素的开头怎么办呢? 用insertBefore方法 具体用法: 父元素.insertBefore(新创建的元素,父元素.children[0]) 用这种方法我们就能在元素的开头创建元素啦

学underscore在数组中查找指定元素

前言 在开发中,我们经常会遇到在数组中查找指定元素的需求,可能大家觉得这个需求过于简单,然而如何优雅的去实现一个 findIndex 和 findLastIndex.indexOf 和 lastIndexOf 方法却是很少人去思考的.本文就带着大家一起参考着 underscore 去实现这些方法. 在实现前,先看看 ES6 的 findIndex 方法,让大家了解 findIndex 的使用方法. findIndex ES6 对数组新增了 findIndex 方法,它会返回数组中满足提供的函数的

《数据结构、算法与应用》8.(顺序查找数组中第一个出现指定元素的位置)

最近在读<数据结构.算法与应用>这本书,把书上的习题总结一下,用自己的方法来实现了这些题,可能在效率,编码等方面存在着很多的问题,也可能是错误的实现,如果大家在看这本书的时候有更优更好的方法来实现,还请大家多多留言交流多多指正,谢谢 8. 从左至右检查数组a[0:n-1]中的元素,以查找雨x相等的那些元素.如果找到一个元素与x相等,则函数返回x第一次出现所在的位置.如果在数组中没有找到这样的元素,函数则返回-1. // // main.cpp // Test_08 // // Created

JavaScript查找数组是否存在指定元素

利用JavaScript的函数有两种方式 1.jQuery jQuery.inArray( value, array [, fromIndex ] ) value 类型: Anything 要查找的值. array 类型: Array 一个数组,通过它来查找. fromIndex 类型: Number 数组索引值,表示从哪里在开始查找.默认值是0,这将查找整个数组. $.inArray()方法类似于JavaScript的原生.indexOf()方法,没有找到匹配元素时它返回-1.如果数组第一个元

在一个升序的但是经过循环移动的数组中查找指定元素

数组是升序的,数组经过循环移动之后,肯定是有左半部分或者有半部分还是升序的. 代码: public class SearchRotateArray { public static int search(int a[], int l, int u, int x) { while(l<=u){ int m = (l+u)/2; if(x==a[m]){ return m; }else if(a[l]<=a[m]){ //左半部分升序排列 if(x>a[m]){ l=m+1; }else if

KT学算法(二)——循环有序数组查找指定元素

问题描述 一个循环有序的数组是形如:"12,16,18,20,41,100,1,4,6,9" 这样的数组. 问题分析 对于循环有序数组,一种简单的定义是: 循环有序数组是将一个有序数组切成两段,并交换位置得到引用块内容 比如现将1,4,6,9,12,16,18,20,41,100在9和12处切分,得到两段:1,4,6,9和12,16,18,20,41,100,再交换这两段的位置就得到了一开始的循环有序数组. 另一种比较严格的定义是: 对于一个循环有序数组{A1,A2,--An},存在一

旋转数组中查找指定元素

如题,在旋转数组中查找指定元素,考虑到多种情况,网上的方法大部分没有考虑,当low,high,mid三个值相等时的情况. 代码如下: int findAll(int A[],int low,int high,int value)//当三个相等时,查找全部元素的函数. { for(int i = low;i < high;i++) { if(A[i]==value) return i; } return -1; } int find(int A[],int n,int value)//查找旋转数组

插入元素到有序数组,二分搜索查找插入位置

当一个数组有序时,要向其中插入元素,可以先使用二分搜索查找其要插入的位置,位置确定后可以执行插入操作. 其中二分搜索的循环体如下(部分代码,具体见文章最后): while(low<=high){//循环条件 mid = (low+high)/2; if(a[mid]<val){ low = mid+1; }else if(a[mid]>val){ high = mid-1; }else{ insert(a,last,mid,val);//a[mid]==val,执行插入操作 return