【数据结构】数组操作(LowArrayApp.java)

 1 // LowArrayApp.java
 2 // demonstrates array class with low-level interface
 3 // to run this program: C>java LowArrayAPP
 4 //java数据结构和算法(第二版)拉佛 著  pdf第46页  数组操作
 5
 6 package first;
 7
 8 class LowArray
 9 {
10     private long[] a;                 // ref to array a
11
12     public LowArray(int size)         // constructor
13     { a = new long[size]; }           // create array
14
15     public void setElem(int index, long value)      // set value
16     { a[index] =  value; }
17
18     public long getElem(int index)    // get value
19     { return a[index]; }
20
21 }    // end class LowArray
22
23
24 public class LowArrayAPP
25 {
26     public static void main(String[] args)
27     {
28         LowArray arr;                  // reference
29         arr = new LowArray(100);       //create LowArray object
30         int nElems = 0;                // number of items in array
31         int j;                         // loop variable
32
33         arr.setElem(0, 77);
34         arr.setElem(1, 99);
35         arr.setElem(2, 44);
36         arr.setElem(3, 55);
37         arr.setElem(4, 22);
38         arr.setElem(5, 88);
39         arr.setElem(6, 11);
40         arr.setElem(7, 00);
41         arr.setElem(8, 66);
42         arr.setElem(9, 33);
43         nElems = 10;        // now 10 items in array
44
45     // display items
46     for (j = 0; j < nElems; j++)
47         System.out.print(arr.getElem(j) + " ");
48         System.out.println("");
49
50     //search for data item
51     int searchKey = 26;
52     for(j=0; j < nElems; j++)
53         if(arr.getElem(j) == searchKey)
54             break;
55     if(j == nElems)
56         System.out.println("Can‘t find " + searchKey);
57     else
58         System.out.println("Found " + searchKey);
59
60     //delete value 55
61     for(j = 0; j < nElems; j++)
62         if (arr.getElem(j) == 55)
63             break;
64
65     for(int k = j; k < nElems; k++)        // 删掉的数据项后面所有单元逐个前移一位
66         arr.setElem(k, arr.getElem(k+1));
67     nElems--;
68
69     // display items
70         for (j = 0; j < nElems; j++)
71             System.out.print(arr.getElem(j) + " ");
72             System.out.println("");
73
74     } // end main()
75 } // end class LowArrayAPP 

运行结果:
77 99 44 55 22 88 11 0 66 33
Can‘t find 26
77 99 44 22 88 11 0 66 33 
 
时间: 2024-11-10 07:53:25

【数据结构】数组操作(LowArrayApp.java)的相关文章

java 数组操作实例

对于任何编程语言,数组都是必须掌握的知识点,本文章向大家介绍java数组的一些操作实例.感兴趣的朋友可以参考一下. Java数组排序及元素查找 Java数组添加元素 Java获取数组长度 Java数组反转 Java数组输出 Java数组获取最大和最小值 Java数组合并 Java数组填充 Java数组扩容 Java数组排序及查找 Java删除数组元素 Java数组差集 Java数组交集 Java在数组中查找指定元素 Java判断数组是否相等 Java数组并集

java数据结构 - 数组使用的代码

在研发过程中,将开发过程比较好的内容珍藏起来,下面内容段是关于java数据结构 - 数组使用的内容,希望能对大伙有较大用. public class Array { private int[]Array; private int ArraySize; private int ArrayLength; private void GetArray(){ Array = new int[ArraySize]; if(Array == null) System.out.println("Memory A

数据结构 数组,链表,栈,队列理解

数据结构 数据结构是指相互之间存在一种或多种特定关系的数据元素的集合.再简单描述一下:数据结构就是描述对象间逻辑关系的学科. 数据存储结构 常用的数据存储方式有两种:顺序存储,非顺序存储.顺序存储就是把数据存储在一块联系的存储介质(硬盘或内存等)中.反之则是非顺序存储. Java中的数组就是典型的顺序存储,链表就是非顺序存储.数组存储数据时会开辟出一块联系内存,按顺序存储.链表先不会开辟出一块内存来,而是只需要知道下一个节点存储的位置,就能把所以的数据连起来了.所以单向链表的最后一个节点是指向N

PHP:数组操作函数array_count_values()的实现

    PHP作为一门弱类型的脚本语言,其变量无需声明,即用即得,其数组更是与其他强类型语言相差巨大,比如PHP数组中的关联键和数值键,其中最有趣的莫过于关联键了,这是在C++或JAVA中无法见到的,而且PHP还提供诸多强大的数组操作函数,比如   array_values()//可以剥离数组中的关联键和数值键,或得有其元素的值所组成的数组 array_keys()//获得所有的关联键和数值键  利用这两个函数就可以非常方便简单的实现  array_count_values()函数  思路就是先

【C/C++学院】0828-数组与指针/内存分配/数据结构数组接口与封装

[送给在路上的程序员] 对于一个开发者而言,能够胜任系统中任意一个模块的开发是其核心价值的体现. 对于一个架构师而言,掌握各种语言的优势并可以运用到系统中,由此简化系统的开发,是其架构生涯的第一步. 对于一个开发团队而言,能在短期内开发出用户满意的软件系统是起核心竞争力的体现. 每一个程序员都不能固步自封,要多接触新的行业,新的技术领域,突破自我. 数组与指针 #include<stdio.h> #include<stdlib.h> void main1() { int a[10]

PHP内核探索之变量(4) - 数组操作

上一节(PHP内核探索之变量(3)- hash table),我们已经知道,数组在PHP的底层实际上是HashTable(链接法解决冲突),本文将对最常用的函数系列-数组操作的相关函数做进一步的跟踪. 本文主要内容: PHP中提供的数组操作函数 数组操作函数的实现 结语参考文献 一.PHP中提供的数组操作函数 可以说,数组是PHP中使用最广泛的数据结构之一,正因如此,PHP为开发者提供了丰富的数组操作函数(参见http://cn2.php.net/manual/en/ref.array.php

Scala数组操作

数组要点 若长度固定则使用Array,若长度可能有变化则使用ArrayBuffer:提供初始值时不要使用new:用()来访问元素:用for(elem<-arr)来遍历元素:用for(elem<-arr if...)...yield...来将原数组转型为新数组:Scala数组和Java数组可以互操作,用ArrayBuffer,使用scala.collection.JavaConversions中的转换函数. 例子: import scala.collection.mutable.ArrayBuf

黑马程序猿——26,基本数据操作流,字节数组操作流,转换流,编码表

-----------android培训.java培训.java学习型技术博客.期待与您交流! ------------ 黑马程序猿--26, DataInputStream,DataOutputStream, ByteArrayInputStream,ByteArrayOutputStream, InputStreamReader,OutputStreamWriter,编码表 /* DataInputStream和DataOutputStream 能够更加操作基本数据类型的流 注意这里是Dat

黑马程序员——26,基本数据操作流,字节数组操作流,转换流,编码表

------<ahref="http://www.itheima.com" target="blank">Java培训.Android培训.iOS培训..Net培训</a>.期待与您交流! ------- 黑马程序员--26, DataInputStream,DataOutputStream, ByteArrayInputStream,ByteArrayOutputStream, InputStreamReader,OutputStreamW