数据结构Java版之查找算法(三)
关于查找算法,这里只进行两个算法的说明。包括 顺序查找 和 折半查找。
顺序查找:
顺序查找常用于未排序的数据中。查找速度较慢,只能应用于较小的数据量。
public int sequentialSearch(int[] list, int ele) {for(int i = 0; i < list.length; i ++) {if(ele == list[i]) return i;}return -1; }
折半查找:
比较快的查找算法,但也仅限于对排好序的数据进行查找。
public int binarySearch(int[] list, int ele) {int low = 0, high = list.length - 1, mid;while(low < high) {mid = (low + high) / 2;if(ele == list[mid]) return mid;if(ele > list[mid]) low = mid + 1;if(ele < list[mid]) high = mid - 1;}return -1; }
转载于:https://www.cnblogs.com/ranter/p/8982579.html
数据结构Java版之查找算法(三)相关推荐
- 数据结构Java版之排序算法(二)
排序按时间复杂度和空间复杂度可分为 低级排序 和 高级排序 算法两种.下面将对排序算法进行讲解,以及样例的展示. 低级排序:冒泡排序.选择排序.插入排序. 冒泡排序: 核心思想,小的数往前移.假设最小 ...
- 数据结构Java版实验五_实验五数据结构综合应用 20162310
分析系统架构 Sprite精灵类 ISprite精灵类是所有类的父类 CombatAircraft战斗机类 首先确保战斗机完全位于Canvas范围内,每隔7帧发射单发黄色子弹. protected v ...
- 数据结构(Java版 2022-10-30)
第一章:算法介绍 数据结构与算法面试题" 一.字符串匹配问题:有一个字符串str1="计算机科学与技术学院欢迎您!" 和另一个字符串 str2="计算机科学与技 ...
- 数据结构(Java版2022-10-29)
第一章:算法介绍 数据结构与算法面试题" 一.字符串匹配问题:有一个字符串str1="计算机科学与技术学院欢迎您!" 和另一个字符串 str2="计算机科学与技 ...
- java插入排序实现,经典(Java版)排序算法的分析及实现之一直接插入排序
预备知识 排序算法从功能上是对一个数据元素集合或序列重新排列成一个按数据元素某个相知有序的序列.从内存空间使用简单上看分为内部排序和外部排序. 内部排序是数据记录在内存中进行排序,适合不太大的元素序列 ...
- Java实现插值查找算法 Insert search
下面带来Java版本插值查找算法的实现,本篇一些概念沿用上一篇博客,如数组左索引为left,右索引为right.先说明一下,插值查找算法要求待查找的数组为有序的. 插值查找原理: 1.插值查找算法类似 ...
- java的数组查找算法_java数组、排序算法、查找算法详解
1.为什么定义数组要采用type[] arrayName;这种方式? 因为这种方式具有很好的可读性,使用这种方式很容易就可以理解这是定义一个变量,其中变量名是arrayName,变量的类型是type[ ...
- 【数据结构----笔记1】查找算法之【顺序查找和折半查找】
#include<iostream> #include<Windows.h> using namespace std;typedef int ElemType; /*_____ ...
- java常见的查找算法
四种查找算法 1.线性查找 2.二分法查找 3.插值查找 4.斐波那契查找 线性查找 线性查找又称顺序查找,是最简单的查找方法查找,是一种最简单的查找方法.其原理就是循环遍历数组去查找的所要的元素,找 ...
最新文章
- Linux7静默安装Oracle11g教程,亲测实用有效!
- SQL语言之DQL语言学习(一) 基础查询
- 《地狱之刃:塞娜的献祭》如何通过人物情感营造恐怖氛围?
- JAVA异常处理分析(中)
- SAP Spartacus login 页面看不到 UI 控件的问题解决
- bcrypt的简单使用
- 几级工作台做石头高墙_创造与魔法:建筑新手入门攻略,家园建材怎么做
- Windows下搭建Octopress博客
- 大咖来信 | 李国杰院士:AI创业光靠算法走不远,警惕命运魔咒
- 含有bin的mysql_MySQL 5.7.18 release版安装指南(含有bin文件版本)
- python编程入门与案例详解-Pythony运维入门之Socket网络编程详解
- SmartUpload出现的问题
- loopback网卡功能
- 医疗管理系统-项目概述和环境搭建
- 任正非:为什么华为选择与西工大合作,而没选清华北大
- python神经网络分析案例_python神经网络实战
- QT:布局管理器消息盒子对话框
- MACbook Air 装win7 步骤
- Android-PickerView的简单封装与使用
- iOS开发除了XCode还需要掌握的8个重要工具,让您开发更容易