房上的猫:数组插入算法等难点专开

一:查找算法

public class Aini {

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

二:复制算法

public class Aini {

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

三:插入算法

public class Aini {

    public static void main(String[] args) {
        // 导入扫描仪
        Scanner bdqn = new Scanner(System.in);
        // 数组插入算法
        int[] arr1 = { 100, 800, 500, 600, 700, 1 };
        System.out.println("请输入你想要插入的值");
        int num = bdqn.nextInt();
        arr1[arr1.length - 1] = num;
        for (int i = arr1.length - 1; i > 0; i--) {
            int a = arr1[i];
            arr1[i] = arr1[i - 1];
            arr1[i - 1] = a;
        }
        // 输出
        for (int i = 0; i < arr1.length; i++) {
            System.out.println(arr1[i]);
        }
    }
}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Python

python 中__setattr__, __getattr__,__getattribute__, __call__使用方法

object._getattr_(self, name) 拦截点号运算。当对未定义的属性名称和实例进行点号运算时,就会用属性名作为字符串调用这个方法。如果继承树...

2037
来自专栏Java帮帮-微信公众号-技术文章全总结

【编程题】Java编程题四(10道)

【编程题】Java编程题四(10道) 【程序31】 题目:将一个数组逆序输出。 import java.util.*; public class lian...

4095
来自专栏小樱的经验随笔

从零开始学算法:高精度计算

前言:由于计算机运算是有模运算,数据范围的表示有一定限制,如整型int(C++中int 与long相同)表达范围是(-2^31~2^31-1),unsigned...

33613
来自专栏阮一峰的网络日志

理解字节序

1. 计算机硬件有两种储存数据的方式:大端字节序(big endian)和小端字节序(little endian)。 举例来说,数值0x2211使用两个字节储存...

2837
来自专栏专注 Java 基础分享

数值信息的机器级存储

计算机中使用八位的块,或者说是「字节」,作为最小的寻址单元。你可以将整个存储器视作一个超大的「字节数组」,每个字节都有一个唯一的数字编号,这个编号就是所谓的地址...

3946
来自专栏武培轩的专栏

快手2018春招后端笔试题解

计算(x^y)%N 题目描述 计算(x^y)%N 注:(x^y)表示x的y次方 输入描述: 每个测试用例一行 每行为空格隔开的 int64_t 类型,分别对应x...

3445
来自专栏C/C++基础

不用加号实现两整数相加

对于二进制的加法运算,若不考虑进位,则1+1=0,1+0=1,0+1=1,0+0=0,通过对比异或,不难发现,此方法与异或运算类似。因而排出进位,加法可用异或来...

372
来自专栏云霄雨霁

Java--泛型程序设计语法

1979
来自专栏deed博客

day02笔记

1242
来自专栏GreenLeaves

Jquery $.extend的重载方法详述

1 $.extend(result,item1,item2,item3,........)  -这个重载方法主要是用来合并,将所有的参数都合并到result中,...

18310

扫描关注云+社区