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

 1 // java 数据结构和算法第二版 拉佛 著
 2 // 数组的操作
 3
 4 package first;
 5
 6 class HighArray {
 7     private long[] a;
 8     private int nElems;
 9
10     public HighArray(int max) {
11         a = new long[max];
12         nElems = 0;
13     }
14
15     public void insert(long value) {
16         a[nElems] = value;
17         nElems++;
18     }
19
20     public void display() {
21         for (int j = 0; j < nElems; j++) {
22             System.out.print(a[j] + " ");
23         }
24         System.out.println(" ");
25     }
26
27     public boolean find(long searchKey) {
28         int j;
29         for (j = 0; j < nElems; j++)
30             if (a[j] == searchKey) break;
31
32         if (j == nElems)
33             return false;
34         else
35             return true;
36     }
37
38     public boolean delete(long value) {
39         int j;
40         for (j = 0; j < nElems; j++)
41             if ( a[j] == value ) break;
42
43         if (j == nElems)
44             return false;
45         else {
46             for (int k = j; k < nElems; k++)
47                 a[k] = a[k + 1];
48             nElems--;
49             return true;
50         }
51     }
52 }// end of class HighArray
53
54
55 public class HighArrayApp {
56     public static void main(String[] args) {
57         int maxSize = 100;
58         HighArray arr  = new HighArray(maxSize);
59
60         arr.insert(77);
61         arr.insert(99);
62         arr.insert(44);
63         arr.insert(55);
64         arr.insert(22);
65         arr.insert(88);
66         arr.insert(11);
67         arr.insert(00);
68         arr.insert(66);
69         arr.insert(33);
70         arr.display();
71
72         int searchKey = 35;
73         if (arr.find(searchKey))
74             System.out.println("Found" + searchKey);
75         else
76             System.out.println("can‘t Find " + searchKey);
77
78         arr.delete(00);
79         arr.delete(55);
80         arr.delete(99);
81
82         if (arr.delete(23429) == false)
83             System.out.println("can‘t delete " + 23429);
84
85         arr.display();
86     }
87 }// end of class HighArrayApp
88
89
90
运行结果:
77 99 44 55 22 88 11 0 66 33
can‘t Find 35
can‘t delete 23429
77 44 22 88 11 66 33  

 
时间: 2024-11-08 12:51:30

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

【数据结构】数组操作(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 pub

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