码迷,mamicode.com
首页 > 编程语言 > 详细

Java数据结构与算法(第二章数组)

时间:2015-10-22 22:38:19      阅读:226      评论:0      收藏:0      [点我收藏+]

标签:

        数组是应用最广泛的数据存储结构。它被植入到大部分编程语言中。

Java中数组的基础知识

    创建数组

            在Java中把它们当作对象来对待,因此在创建数组是必须使用new操作符:

    int[] intArray;            //defines a reference to an array
    ingArray = new int[100];    //creates the array, and 
                                //sets int Array to refer to it
    //或使用等价的单语句声明的方法:
    int[] int array = new int[100];

            数组是一个对象,所以它的名字(前面程序中intArray)是数组的一个引用;它并不是数组本身。数组存储在内存中的其他地址中,而intArray仅仅保存着这个地址。数组有一个length字段,通过它可以得知当前数组大小(数据项的个数);

int arrayLength = intArray.length;        //find array size

一旦创建数组,大小便不可改变。

    访问数组数据项

            数组数据项通过方括号中的下标来访问。

        temp = intArray[3];        //get contents of fourth element of array
        intArray[7] = 66;            //intsert 66 into the eighth cell

    初始化

            当创建整型数组之后,不另行指定那么数组会自动初始化为空。

            除非将特定的值赋给数组的数据项,否则它们一直是特殊的null对象。

            使用下面的语法可以初始化一个基本类型的数组:

int[] intArray = {1,3,45,23,123,122,56};

            数组的大小是由数据列表中的数据项决定的;大小固定不可改变;

有序数组的Java代码

            下面讨论一下有序数组的Java代码,它使用OrdArray类来封装数组和它的算法。类的核心是find()方法,通脱二分查找类定位一个特定的数据项。

小结

  • Java中的数组是对象,由new操作符创建;

  • 无序数组可以提供快速的插入,但查找和删除较慢;

  • 将数组封装到类中可以保护数组不随意更改;

  • 类的接口类用户可以访问的方法(有时还有字段)组成;

  • 类的接口被设计成使类用户操作更加简单;

  • 有序数组可以使用二分查找;

  • 以B为底A的对数(大概)是在结果小雨1之前用B除A的次数;

  • 线性查找需要的时间与数组中数据项的个数成正比;

  • 二分查找需要的时间与数组中数据项的个数的对数成正比;

  • 大O表示法为比较算法的速度提供了一种方便的方法。

  • O(1)级时间的算法是最好的,O(logN)次之,O(N)为一般,O(N2)最差;







36页

Java数据结构与算法(第二章数组)

标签:

原文地址:http://my.oschina.net/u/1431757/blog/520924

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!