zoukankan      html  css  js  c++  java
  • Java 算法 — 数组的增删改查

    前置条件: elements  是 数组的长度。

    增:

        public void insert(long value) {
            arr[elements++] = value;
        }

    其中elements 在这个 类 初始化 是 0    而且    前提是 arr 是有不是null,不然空指针异常。


    顺序查找:

    1.顺序查找,,根据值查找 返回下标:

    /**
         * 查找数据
         */
        public int search(long value) {
            int i;
            for(i = 0; i < elements; i++) {
                if(value == arr[i]) {
                    break;
                }
            }
            
            if(i == elements) {
                //没找到
                return -1;
            } else {
                //找到返回i
                return i;
            }
            
        }

    2,顺序查找  , 根据下标查找 返回值:

    public long getValue(int index){
            if (index >= elements || elements < 0){
                throw new ArrayIndexOutOfBoundsException();
            }else{
                return arr[index];
            }
        }

    3. 二分法查找,根据 值 查找,返回 下标:

    注意!  二分法仅适用于 有序数组【递增 、 递减】,下面是递增版。 【   一般考试那些教材 都写明一定得是 递增   】

     二分法 - 有序递增

    删:

    1.根据index 删

    思路: index 以后的 都 = arr[index + 1],,

     public void delete(int index) {
            if (index >= elements || index < 0) {
                throw new ArrayIndexOutOfBoundsException();
            } else {
                for (int i = index; i < elements; i++) {
                    arr[index] = arr[index + 1];
                }
                elements--;
            }
        }

    改:

    根据下标更新数据:

    思路: arr[下标] = newValue

        /**
         * 更新数据
         */
        public void change(int index, int newvalue) {
            if (index >= elements || index < 0) {
                throw new ArrayIndexOutOfBoundsException();
            } else {
                arr[index] = newvalue;
            }
        }
    }

    本文来自博客园,作者:咸瑜,转载请注明原文链接:https://www.cnblogs.com/bi-hu/p/15515584.html

  • 相关阅读:
    自定义jquery插件
    jquery中的编程范式,即jquery的牛逼之处
    $.ajax 完整参数
    URL参数获取/转码
    hello world
    此博客已不更新,作者的个人域名LIZHONGC.COM已经启用。
    岁月记录
    下雪往事
    《x86汇编语言:从实模式到保护模式》检测点和习题答案
    《穿越计算机的迷雾》第二版再版说明
  • 原文地址:https://www.cnblogs.com/bi-hu/p/15515584.html
Copyright © 2011-2022 走看看