Java入门:基础算法之线性搜索

本程序使用线性搜索算法从n个数中查找一个数。

/* Program: 线性搜索示例
 * @author: 理工云课堂
 * Input: 元素个数,每个元素值,待查找数据的值
 * Output:待查找数的位置*/
import java.util.Scanner;
class LinearSearchExample
{
   public static void main(String args[])
   {
      int counter, num, item, array[];
      //捕获用户输入
      Scanner input = new Scanner(System.in);
      System.out.println("Enter number of elements:");
      num = input.nextInt();
      //创建一个数组来存放所有整数
      array = new int[num];     
      System.out.println("Enter " + num + " integers");
      //循环将用户输入的数存放到数组中
      for (counter = 0; counter < num; counter++)
        array[counter] = input.nextInt();

      System.out.println("Enter the search value:");
      item = input.nextInt();

      for (counter = 0; counter < num; counter++)
      {
         if (array[counter] == item)
         {
           System.out.println(item+" is present at location "+(counter+1));
           /*找到了这个数就停止查找,使用break终止for循环。*/
           break;
         }
      }
      if (counter == num)
        System.out.println(item + " doesn‘t exist in array.");
   }
}

输出1:

Enter number of elements:
6
Enter 6 integers
22
33
45
1
3
99
Enter the search value:
45
45 is present at location 3

输出2:

Enter number of elements:
4
Enter 4 integers
11
22
4
5
Enter the search value:
99
99 doesn‘t exist in array.
时间: 2024-12-25 19:31:00

Java入门:基础算法之线性搜索的相关文章

Java 入门基础——面向对象的特征

计算机软件系统是现实生活中的业务在计算机中的映射,而现实生活中的业务其实就是一个个对象协作的过程.面向对象编程就是按现实业务一样的方式将程序代码按一个个对象进行组织和编写,让计算机系统能够识别和理解用对象方式组织和编写的程序代码,这样就可以把现实生活中的业务对象映射到计算机系统中. 面向对象的编程语言有封装.继承 .抽象.多态等4个主要的特征. 封装: 封装是保证软件部件具有优良的模块性的基础,封装的目标就是要实现软件部件的"高内聚.低耦合",防止程序相互依赖性而带来的变动影响.在面向

Java入门基础学习源码,有C或C++语言基础的可以快速掌握

以下为完整源码,需要1.8版本JDK,否则部分新特性可能出现兼容问题,去掉注释号即可运行 package hello; import java.util.Scanner; public class Hello { public static void main(String[] args) { // TODO 自动生成的方法存根 /* //这是第一个程序 System.out.println("这是一个减法计算器"); Scanner in = new Scanner(System.i

java入门排列算法 - - &gt;插入排序(代码量最少)

要理解插入排序,首先得理解实现一个算法-->对于一个已经从大到小排好序的数组a[],插入一个value使得整个数组的顺序依然是从大到小的: 这个算法的实现非常简单,不做探讨. 对于乱序数组a[];在外层i循环中,第一次循环,我假定数组只有一个元素a[0],以a[1]作为value来插入,第一次循环结束可以得到一个有序数组, 第二次循环以数组有两个元素a[0],a[1],再以a[2]作为value去插入,以此类推实现整个数组排序. import java.lang.reflect.Array;im

java入门基础

什么是java? java是一门编程语言  编程语言有很多种 你比如 C语言 等等 为什么学习java呢! 因为你要和计算机交互  当然了你用汉语跟她说她听不懂 所以你要学习编程语言 那么额咱们的java就是一种 java可以做很多东西比较常见的就是网页后台和和桌面程序 java分为javaSE和javaEE还有javaME 咱们主要的课程是javaSE(简单基础核心)和javaEE(企业应用框架) 那么如何操作一个简单的java程序呢 首先想要在电脑上编写java程序就必须要配置一个叫jdk的

Java入门基础概念(一)

既然决定以后从事程序员这个行业,多学点东西总是好的,于是开始学习一门新的语言,不知道会学得怎么样,试试看看吧 标识符:自己可以起名字的地方都叫标识符,都遵守标识符的规则. 标识符组成 Java标识符由数字,字母和下划线(_),美元符号($)组成. 并且必须遵守以下规则: 1.Java标识符只能由数字.字母.下划线"_"或"$"符号以及Unicode字符集组成 2.Java标识符必须以字母.下划线"_"或"$"符号以及Unico

Java入门学习教程视频

对于Java入门基础学习是必要,特别面向对象的学习,是基础也是掌握Java及运用的核心部分! 以下提供两个学习Java入门材料, http://www.jikexueyuan.com/ 极客学院,基础入门的一些知识的实践操作视频教程,简洁易懂 http://www.runoob.com/java/java-tutorial.html Java菜鸟教程,对于java语法了解是很有帮助的 通过以上学习,对Java就也个比较基础认识,也可使用工具进行一些简单编程操作.

java入门学习(3)&mdash;循环,选择,基础算法,API概念

1.顺序结构:也就是顺着程序的前后关系,依次执行.2.选择分支:利用if..else , / switch(){case [ 这个必须是常量]:}; / if..else if-.. -.else..等语句让程序在不同的分支中切换执行.3.循环结构:重复执行完成功能,可以用while(){}(先判断再执行):do{}while():(先执行后判断): for(初始值:结束条件:循环控制变量): 注:其中循环可以嵌套,嵌套的时候先判断外层循环是否满足,然后再进入内层循环,执行完内层循环管,一直到条

简单的入门Android开发和Java语言基础[图]

简单的入门Android开发和Java语言基础[图]前言:去年年底到今年年初,我做过简单的智能家居,也实现过一些简单的直连和远程的智能家居.于是就将最简单的通信发布出来:智能家居简单实现-使用ESP8266简单实现和APP通讯由于这方面的资料少之又少,所以阅读量飙升的很快.也有很多人加了好友问我问题.通过问题我发现,很多都是学硬件的.或是做智能家居方面的学生,基本都不会 Android 开发的.问也有很多问我怎么学 Android 开发的.很多的人认知还是停留在学习这种软件开发技术需要去培训机构

Java 入门课程视频实战-0基础 上线了,猜拳游戏,ATM实战,欢迎围观

Java 入门课程视频实战-0基础 已经上传完了.欢迎小伙伴们过来围观 直接进入: http://edu.csdn.net/course/detail/196 课程文件夹例如以下: 1 初识Java  19:08 2 熟悉Eclipse开发工具  12:42 3 Java语言基础  17:39 4 流程控制  14:53 5 数组  14:44 6 字符串  34:32 7 类和对象  29:30 8 猜拳游戏  33:39 9 模拟银行柜员机程序  36:35 10 退休金结算程序  本课程由