java查找算法:线性查找
线性查找思路:
在待查数据中进行顺序性轮询查找,当存在待查的数据时返回当前数据索引位置,如果不存在则返回不存在表示-1,技巧为了增加效率减少主要代码的操作,可以设置一个监视哨在数组的最后一位,这样就可以有效的防止数据越界的比较了只需要比较当前数据是否是所需要的数据就OK了。
java代码实现
public class SeqSearch {public static void main(String[] args) {
int arr[]={1,2,3,4,5,6,7,8,9,10};
int index=SeqSearch(arr,4);
//进行判断,如果index!=-1说明找到了该元素
if(index!=-1){System.out.println("找到了该元素,在数组的位置"+index);
}else{System.out.println("没有找到元素");
}
}public static int SeqSearch(int arr[],int value){
for(int i=0;i<arr.length;i++){
if(arr[i]==value){
//如果找到了该元素,返回元素在数组的下标
return i;
}
}
//如果没有找到该元素,返回-1;
return -1;}
java查找算法:线性查找相关推荐
- Java数据结构与算法 线性查找和二分查找
查找 查找(searching)是在一组数据项中找到指定的目标元素(target element)或者判定组内不存在目标的过程.要查找的数据项组有事成为查找池(search pool). 在此讨论两种 ...
- 数据结构与算法-查找算法(二分查找,插值查找,斐波那契(黄金分割法)查找)
查找算法 以下三种算法的基本思想相同,都是利用递归来寻找 二分查找 思路分析 1.首先确定该数组的中间下标,min = (left + right) / 2 2.然后让需要查找的的数findVal和a ...
- Java数据结构与算法——线性查找 二分查找 插值查找
1.线性查找 有一个数列: {1,8, 10, 89, 1000, 1234} ,判断数列中是否包含此名称[顺序查找] 要求: 如果找到了,就提示找到,并给出下标值. package com.szh. ...
- 线性查找法java代码_Java线性查找和二分查找
Java线性查找和二分查找. 一 线性查找 定义:在一列给定的值中进行搜索,从一端开始逐一检查每个元素,直到找到所需元素的过程. 线性查找又称为顺序查找.如果查找池是某种类型的一个表,比如一个数组,简 ...
- 我的Java学习之路(第十九天)------ 数组的复制、反转、查找(线性查找、二分法)
(参考:尚硅谷_宋红康_Java语言基础) 文章目录 数组的复制 数组的反转 数组的查找 线性查找 二分法查找 数组的复制 假定两个数组arr1与arr2,如果使用arr2 = arr1,但是这个并不 ...
- 【数据结构与算法】比较法分析查找算法与查找结构
基本的查找技术: 线性表的查找技术 顺序查找 分块查找 二分查找(折半查找) 插值查找 树表的查找技术 二叉排序树 平衡二叉树 B树(B+树.B-树等) 散列表的查找技术 开散列表 闭散列表 顺序查找 ...
- 查找算法——顺序查找
目录 一.算法介绍 1.算法思想 2.算法流程 二.算法实现 1.代码实现 2.测试用例及结果 三.效率分析 1.时间复杂度 2.空间复杂度 一.算法介绍 1.算法思想 顺序查找也称线性查找,其查 ...
- 数据结构与算法笔记(十二)—— 查找算法(顺序查找、二分法查找)
搜索是在一个项目集合中找到一个特定项目的算法过程.搜索通常的答案是真的或假的,因为该项目是否存在.搜索的几种常见方法:顺序查找.二分法查找.二叉树查找.哈希查找 一.顺序查找 最基本的查找技术,过程: ...
- php折半查找算法,二分查找 [折半查找] 算法 PHP 版
查找表:就是同一类型的数据元素构成的数据集合 有静态表和动态表 本文实现PHP版的二分查找算法[本算法仅用于顺序存储的查找表] /** * Created by PhpStorm. * User: 1 ...
- 查找算法——二分查找(原理+源码)
1,原理 二分查找又称折半查找,只适用于有序数组.二分查找原理很简单,针对有序数组的查找效率也很高.具体原理为,每次拿目标数值(以下用value表示)与数组中间位置的数据(以下用arry[mid]表示 ...
最新文章
- java代码 将字符串快速生成到string.xml中
- idea基于hibernate生成的Entitle对象,会忽略外键属性
- 我在 MySQL 的那些年
- .NET 6 Preview5+VS2022实战千万并发秒杀项目,帅爆了(附源码)
- oracle里子连接查询,pc端页面滚动到底部加载更多数据......
- JMeter记录篇2——性能测试基础(2)
- ASP.Net服务端基本控件介绍
- leetcode-6-Z字形变换
- 针对 自制Windows Mobile 文件浏览器的改进
- Powerdesigner概念模型并将概念模型转换成物理模型
- 青铜器RDM与PTC Windchill协同构建货真价实的PLM解决方案
- cadence电阻在哪个库_cadence元件库介绍
- 微软服务器登录慢怎么解决,登录微软账户特别慢的原因
- ionic(mui、elementUI)自定义字体图标
- 系统分析师和系统架构师的区别?
- 酷睿i5 12500h怎么样 i512500h是标压吗
- 秒变配色高手!怎么都不会错的6条网页设计配色原则
- 安卓修改包名和Project
- 前方是绝路,希望在转角
- 高新技术企业认定的价值
热门文章
- Ubuntu发烧友三部曲
- 算法数据结构(三十五)----子数组达到累加和的最大长度系列
- 正则匹配中文英文字符及标点
- 解决aspx页面中关键词(keywords)和描述(descript)不显示问题
- 5分钟搞定 微信早安推送 升级版
- linux python3安装包_在 Linux 中安装 Python3
- python机器人库(robotics-toolbox-python)的运用
- 2021-2027年全球与中国彩色隐形眼镜行业市场前瞻与投资战略规划分析报告
- Java Lambda reduce 例子 全网reduce最清晰易懂的例子,不服来辩 xxx XXX
- 腾讯云Ubuntu18.04配置OpenPCDet深度学习环境