前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >数据结构与算法-数组

数据结构与算法-数组

作者头像
cwl_java
发布2019-10-26 21:14:27
2350
发布2019-10-26 21:14:27
举报
文章被收录于专栏:cwl_Javacwl_Java
简介

所谓数组,是有序的元素序列。 [1] 若将有限个类型相同的变量的集合命名,那么这个名称为数组名。组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。用于区分数组的各个元素的数字编号称为下标。数组是在程序设计中,为了处理方便, 把具有相同类型的若干元素按无序的形式组织起来的一种形式。 [1] 这些无序排列的同类数据元素的集合称为数组。

代码示例
代码语言:javascript
复制
package *;

/**
 * @program: data-structure
 * @description: 数组
 * @author: ChenWenLong
 * @create: 2019-09-10 09:19
 **/
public class MyArray<T> {
    private T[] MyArray;
    private int length = 0;

    /**
     * 功能描述:
     * 〈创建指定大小的数组〉
     *
     * @params : [size]
     * @return :
     * @author : cwl
     * @date : 2019/9/10 9:21
     */
    public MyArray(int size) {
        MyArray = (T[]) new Object[size];
    }

    /**
     * 功能描述:
     * 〈默认大小的数组 大小为10〉
     *
     * @params : []
     * @return :
     * @author : cwl
     * @date : 2019/9/10 9:21
     */
    public MyArray() {
        MyArray = (T[]) new Object[10];
    }

    /**
     * 功能描述:
     * 〈往数组中插入数据〉
     *
     * @params : [item]
     * @return : void
     * @author : cwl
     * @date : 2019/9/10 9:22
     */
    public void insert(T item) {
        MyArray[length++] = item;
    }

    /**
     * 功能描述:
     * 〈确定该元素是否在数组当中〉
     *
     * @params : [item]
     * @return : boolean
     * @author : cwl
     * @date : 2019/9/10 9:23
     */
    public boolean isCantain(T item) {
        for (int i = 0; i < length; i++) {
            if (MyArray[i] == item) {
                return true;
            }
        }
        return false;
    }

    /**
     * 功能描述:
     * 〈找到对应元素的索引〉
     *
     * @params : [item]
     * @return : int
     * @author : cwl
     * @date : 2019/9/10 9:25
     */
    public int findIndex(T item) {
        for (int i = 0; i < length; i++) {
            if (MyArray[i] == item) {
                return i;
            }
        }
        return -1;
    }

    /**
     * 功能描述:
     * 〈删除某个元素〉
     *
     * @params : [item]
     * @return : boolean
     * @author : cwl
     * @date : 2019/9/10 9:26
     */
    public boolean delete(T item) {
        int i = 0;
        for (i = 0; i < length; i++) {
            if (item == MyArray[i]) {
                break;
            }
        }
        if (i == length)
            return false;
        for (int j = i; j < length - 1; j++) {
            MyArray[j] = MyArray[j + 1];
        }
        length--;
        return true;
    }

    /**
     * 功能描述:
     * 〈打印数组〉
     *
     * @params : []
     * @return : void
     * @author : cwl
     * @date : 2019/9/10 9:26
     */
    public void show() {
        System.out.print("[");
        for (int i = 0; i < length; i++) {
            if (i == length - 1)
                System.out.print(MyArray[i]);
            else {
                System.out.print(MyArray[i] + ", ");
            }
        }
        System.out.print("]\n");
    }
}
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-10-18 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 简介
  • 代码示例
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档