`
purple12
  • 浏览: 6928 次
  • 性别: Icon_minigender_1
  • 来自: 湖南
社区版块
存档分类
最新评论

数组及动态数组

 
阅读更多

数组与动态数组

数组是具有相同数据类型的一组数据的集合。有一维数组和二维数组。

其特点是:线性结构,内存地址连续,长度固定,具有下标的一类数据结构。

在创建时首先确定元素的数据类型和数组名,在利用new关键字来分配内存空间。

如:int [ ] mouth =new int [12];

这样就为mouth这个int类型的数组分配了12个元素的内存空间。

但是在创建数组时,往往数据是不固定的,我们可能会经常性的添加数据,插入数据,删除数据,这样数组的结构特点就有了一定的局限性。因此一维数组在存储一些简单而少量且固定的数据。为了实现数组的更多的功能我们引入了动态数组。

动态数组顾名思义在继承了数组线性结构,内存地址连续后,其长度是不固定的,可以根据数据个数需要随意增减存储空间。

在动态数组中基本实现了所有数据结构中的操作:

放数据,取数据,移除数据,插入数据,删除数据,修改数据。

//数组的添加功能

public class Array {

         private int[] src =new int[0];
           //数组的添加功能
           public void add(int t){
           int [] dest=new int[src.length+1];
           dest[dest.length-1]=t;
           for (int i=0;i<src.length ;i++){
           dest[i]=src[i];
      }
      src =dest;

 //数据的获取功能

 public int get(int index){
      return src[index];
  }

//数据的插入功能

public void insert(int t,int index){
        int [] inst =new int[src.length+1];
        inst[index]= t;
        for (int i=0;i<src.length+1;i++){
        if(i<index){
                inst[i]=src[i];
          }else if(i>index){
           inst[i+1]=src[i];
           }   
        }
               inst=src;
 }

//数据的删除功能

  public void dele(int index){
          int [] dsrc =new int[src.length-1];
            dsrc[index]=src[index+1];
                for(int i=0;i<src.length-1;i++){
                   if(i<index){
                      dsrc[i]=src[i];
                       }else if(i>index){
                             dsrc[i-1]=src[i];
                      }
             }
                         dsrc=src

  }

//数据的替代功能

public void replace(int t,int index){
             src[index]=t;
 }

 

 

 

分享到:
评论

相关推荐

    C语言数组:C语言数组定义、二维数组、动态数组、字符串数组_C语言中文网1

    C99引入了变长数组(Variable Length Arrays, VLA),允许在运行时动态指定数组的大小。例如,`int arr[n]` 其中n在运行时才确定。但是,变长数组在C++或某些C实现中可能不被支持。 6.9 对C语言数组的总结以及实例...

    数组动态分配空间

    本程序实现了一维,二维和三维数组的动态分配空间 以及在析构函数中将空间全部回收的过程。

    动态数组的使用快速创建数组(VB6.0代码编写)

    本篇文章将深入探讨动态数组的使用、创建及VB6.0中的实现细节。 1. **动态数组的概念** 动态数组不同于静态数组,它的大小不是在编译时确定,而是在程序运行时根据需要动态地改变。这使得动态数组在处理不确定数量...

    动态数组的实现(利用动态数组增长实现的)

    动态数组是一种在编程中常用的内存管理技术,它允许我们在运行时根据需要调整数组的大小。在C语言中,我们通常通过使用指针和`malloc()`、`realloc()`、`free()`等函数来实现动态数组。下面我们将深入探讨动态数组的...

    autoit 解决二维数组动态赋值

    总结来说,AutoIt中的二维数组动态赋值可以通过`ReDim`或`ArrayAdd`函数实现,根据不同的需求选择合适的方法。在处理二维数组时,需要注意数组的行、列操作以及正确遍历数组的方法。了解这些技巧,将有助于你在...

    45.java数组动态初始化.zip

    45.java数组动态初始化.zip45.java数组动态初始化.zip45.java数组动态初始化.zip45.java数组动态初始化.zip45.java数组动态初始化.zip45.java数组动态初始化.zip45.java数组动态初始化.zip45.java数组动态初始化.zip...

    vc++6.0中动态数组实现(例如string类对象数组等)[文].pdf

    VC++6.0 中动态数组实现 在 VC++6.0 中,动态数组实现是指在运行时动态地分配数组,而不是在编译时固定数组长度。这种实现方式可以让程序在执行时根据需要动态地分配数组长度。 动态数组实现的重要特点是: 1. ...

    如何在vc中创建动态数组

    二维动态数组在C++中通常用指向指针的指针表示,因为C++不支持真正的多维数组动态分配。下面是如何创建一个`int[2][3]`的二维动态数组: ```cpp int **ppi = new int*[2]; for(int i = 0; i ; i++) { ppi[i] = new...

    关于VB中的数组教程,数组的概念,动态数组的建立与声明

    本教程将深入探讨数组的概念、动态数组的建立与声明,帮助你更好地理解和运用VB中的数组。 首先,我们要理解数组的基本概念。数组是由相同类型的数据元素构成的有序集合,每个元素都有一个唯一的索引,通过这个索引...

    用动态数组实现的大数阶乘

    本篇文章将详细讲解如何利用动态数组来实现大数阶乘的计算,以及在这个过程中涉及的一些关键知识点。 首先,我们要理解什么是动态数组。动态数组是一种可以在运行时改变其大小的数组,它与静态数组不同,静态数组在...

    51.java二维数组动态初始化.zip

    51.java二维数组动态初始化.zip51.java二维数组动态初始化.zip51.java二维数组动态初始化.zip51.java二维数组动态初始化.zip51.java二维数组动态初始化.zip51.java二维数组动态初始化.zip51.java二维数组动态初始化....

    返回MFC动态库函数动态数组

    动态数组是一种在运行时可以改变大小的数组,它不同于固定大小的数组,能够根据程序需求动态调整存储空间。 首先,我们需要理解DLL(Dynamic Link Library)。DLL是一种共享库,它包含可由多个程序同时使用的代码和...

    第6节 JavaScript数组及应用.rar

    第6节 JavaScript数组及应用.rar第6节 JavaScript数组及应用.rar第6节 JavaScript数组及应用.rar第6节 JavaScript数组及应用.rar第6节 JavaScript数组及应用.rar第6节 JavaScript数组及应用.rar第6节 JavaScript数组...

    VB 动态数组实例

    在VB(Visual Basic)编程语言中,动态数组是一种非常重要的数据结构,它允许程序员在运行时根据需要调整数组的大小。动态数组的概念是相对于静态数组而言的,静态数组在声明时必须指定固定的大小,而动态数组则可以...

    VBA动态数组VBA动态数组VBA动态数组VBA动态数组

    根据给定的信息,我们可以推断出本文主要讨论的是VBA(Visual Basic for Applications)中的动态数组及其在Excel自动化处理中的应用。尽管原文本似乎存在乱码情况,但是我们可以通过其提供的线索来构建一个关于VBA...

    动态数组 很全很详细

    根据给定的信息,我们可以总结出以下关于动态数组的知识点: ### 动态数组概述 动态数组是一种可以在运行时改变大小的数组类型。与固定大小的数组不同,动态数组允许在程序执行过程中添加或删除元素,这使得它们...

    用Java动态数组扩充实现线性表

    本话题聚焦于使用动态数组来实现线性表,这是一种常见的数据结构实现方式,因为它既保留了数组的高效访问特性,又能灵活地调整大小以适应数据的变化。 动态数组,也称为可变长度数组,不同于固定大小的数组,它允许...

    用C语言创建动态数组

    ### 用C语言创建动态数组 在C语言中,数组是一种基本的数据结构,它能够存储相同类型的数据元素。然而,标准C语言中的数组是固定大小的,在声明时必须指定其大小,这限制了它们在某些场景下的应用。例如,当我们不...

    C C++ C++ Builder创建动态数组

    动态数组与静态数组不同,静态数组在编译时其大小就已经固定,而动态数组则可以在运行时动态改变大小。这使得动态数组更加灵活,特别是在处理不确定数量的数据或需要高效地分配和释放内存的情况下。 ### 1. 动态...

Global site tag (gtag.js) - Google Analytics