一、复制数组算法

//数组复制算法
public class Test{
    public static void main(String[] args){
        int[]    arrA    =    {100,800,500,600,700};
        int[]    arrB    =    new    int[arrA.length];
        //用for循环把A的对应下标值复制给B
        for(int i=0;i<arrA.length;i++){
            arrB[i]    =    arrA[i];
        }
        //输出arrB
        for(int i=0;i<arrB.length;i++){
            System.out.println(arrB[i]);
        }
    }
}

运行结果:

二、查找数组算法

//数组查找算法
//查找学生是否存在
import java.util.Scanner;    //导入扫描仪
public class Test{
    public static void main(String[] args){
        Scanner in    =    new Scanner(System.in);
        System.out.print("请输入你要查找的学生:");
        String name    =    in.next();
        String[] arr    =    {"王二","张三","李四","王五","六麻子"};    //学生姓名
        int yes    =    arr.length;    //记录一个不可能的下标
        for(int i=0;i<arr.length;i++){
            if(name.equals(arr[i])){
                yes    =    i;
                break;
            }
        }
        if(yes<arr.length){
            System.out.println("学生:"+name+"存在,下标值是"+yes);
        }
        else{
            System.out.println("学生:"+name+"不存在");
        }
    }
}

运行结果:

三、插入数组算法

//数组插入算法
import java.util.Scanner;
public class Test{
    public static void main(String[] args){
        Scanner    in    =    new Scanner(System.in);
        int[] arr    =    {2,43,67,99,199,433};
        System.out.println("请输入你想要插入的值:");
        int num    =    in.nextInt();
        arr[arr.length-1]    =    num;
        for(int i=arr.length-1;i>0;i--){
            if(arr[i]<arr[i-1]){
                int t    =    arr[i];
                arr[i]    =    arr[i-1];
                arr[i-1]    =    t;
            }
            else{
                break;
            }
        }
        //输出
        for(int i=0;i<arr.length;i++){
            System.out.println(arr[i]);
        }
    }
}

运行结果:

JAVA 数组算法(复制、查找、插入)的更多相关文章

  1. Java数组的复制

    初学Java的时候,需要复制数组的时候,一下子就想到使用赋值语句“=”,例如:array1 = array2:但后来慢慢发现,这个语句并不能将array2的内容复制给array1,而是将array2的 ...

  2. Java数组的复制全解

    1.将一个基本数据类型数组的引用赋值给另一个数组 public class Array_copy { int[] array1=new int[]{1,2,3,4,5,6}; int[] array2 ...

  3. Java数组的复制Arrays.copyOf()、System.arraycopy()、nums.clone()

    public static native void arraycopy(Object src, int srcPos, Object dest, int destPos, int length); a ...

  4. Java数据结构和算法总结-数组、二分查找

    前言:在平时开发中数组几乎是最基本也是最常用的数据类型,相比链表.二叉树等又简单很多,所以在学习数据和算法时用数组来作为一个起点再合适不过了.本篇博文的所有代码已上传 github ,对应工程的 ar ...

  5. Java实现的二分查找算法

    二分查找又称折半查找,它是一种效率较高的查找方法. 折半查找的算法思想是将数列按有序化(递增或递减)排列,查找过程中采用跳跃式方式查找,即先以有序数列的中点位置为比较对象,如果要找的元素值小 于该中点 ...

  6. Java数组的一些基本算法

    数组的一些算法问题:  排序:(升序)   选择排序:     求每一轮的最小值:再输出   冒泡排序:     相邻的两个数相比较,把两个数相比较,第一个大于好面的就交换位置   shell排序: ...

  7. Java数组的排序算法

    在Java中,实现数组的排序算法有很多,如冒泡排序法.选择排序法.直接插入法和快速排序法等.下面介绍几种排序算法的具体 实现. 本文引用文献:Java必须知道的300个问题. 1.冒泡排序法 1.1 ...

  8. [转载]Java数组扩容算法及Java对它的应用

    原文链接:http://www.cnblogs.com/gw811/archive/2012/10/07/2714252.html Java数组扩容的原理 1)Java数组对象的大小是固定不变的,数组 ...

  9. Java数组扩容算法及Java对它的应用

    1)Java数组对象的大小是固定不变的,数组对象是不可扩容的.利用数组复制方法可以变通的实现数组扩容.System.arraycopy()可以复制数组.Arrays.copyOf()可以简便的创建数组 ...

随机推荐

  1. ThinkPHP5 助手函数

    对于ThinkPHP5.0以前的版本,助手函数全部是单字母函数,但到ThinkPHP5之后,使用如下函数来代替单字母函数: 最常用: /** * 实例化Model * @param string $n ...

  2. MySQL 使用笔记

    1. How to export the database of mysql go to command line,  use "CMD" cd C:\Program Files\ ...

  3. Java是如何处理别名(aliasing)的

    什么是Java别名(aliasing) 别名意味着有多个别名指向同一个位置,且这些别名有不同的类型. 在下面的代码例子中,a和b是两个不同的名字,有不同的类型A和B,B继承A B[] b = new ...

  4. CSS3中的Rem值与Px之间的换算

    bootstrap默认 html{font-size: 10px;} rem是一个相对大小的值,它相对于根元素<html>, 比如假设,我们设置html的字体大小的值为html{font- ...

  5. 让C#开发更简单,抽象增删改

    相信经常做一些MS,CRM 项目的童鞋非常有体会,大部分时间都是在复制和粘贴,大部分项目框架都是建一个三层,首先是DAL建一些增删改查,然后呢是BLL业务层再建一些增删改查,然后UI层再调用增删改查, ...

  6. Unreal Engine 虚幻引擎宣布对开发者免费

    虚幻引擎4现在可供每个人免费使用,而且所有未来的更新都将免费!您可以下载引擎并将其用于游戏开发的各个方面,包括教育.建筑以及可视化,甚至虚拟现 实.电影和动画. 当您发布游戏或应用时,在您的每个游戏在 ...

  7. Linux开机启动程序详解[转]

    Linux开机启动程序详解 我们假设大家已经熟悉其它操作系统的引导过程,了解硬件的自检引导步骤,就只从Linux操作系统的引导加载程序(对个人电脑而言通常是LILO)开始,介绍Linux开机引导的步骤 ...

  8. *[hackerrank]Lexicographic paths

    https://www.hackerrank.com/contests/w9/challenges/lexicographic-steps 这题还是折腾很久的.题目意思相当于,比如有两个1两个0,那么 ...

  9. ASP.NET 尖括号 百分号 井号 等号 的用法

    1.<%=%>  尖括号 百分号 等号 里面放的变量或方法,如: <div> <h1>Hello World</h1> <p><%= ...

  10. Gnome下Gvim菜单无法显示的解决办法

    前些日子从Xfce转向了Elementary OS,安装Gvim后发现菜单无法显示,现在找到了解决的办法. 编辑文件  -/.gnome2/vim [Placement] Dock=Toolbar\\ ...