//2015/07/07
//Java数组小小练习题
/*
3. 写一个函数,计算一个整数数组的平均值
4. 自定义一个整数数组a,读入一个整数n,如果n 在数组中存在,则输出n 的下标;如果不存在,则输出-1。
5. 给定一个数组,输出数组中的最大值和最小值
6. *给定一个数组,把这个数组中所有元素顺序进行颠倒。
7. *完成数组的冒泡排序算法:给定一个数组:int[] a = {1,3,2,7,5},利用冒泡排序对其按照从小到大的顺序排序,然后输出结果。
8. *使用第二种算法对数组进行排序
注:每一题都被函数封装起来了
*/
package Chp5; public class ArrayTest {
//Three 计算数组的平均值
public void Average(int[] array)
{
System.out.println("第3题");
int len = array.length;
int average = 0;
int sum = 0;
for(int i = 0;i<len;i++)
{
sum+=array[i];
}
average = sum/len;
System.out.println("数组的平均值为:"+average);
} //第四题:自定义一个整数数组a,读入一个整数n
public void IsExit(int[] array,int num)
{
System.out.println("第4题");
int len = array.length;
boolean bl = false;
for(int i = 0;i<len;i++)
{
if(array[i] == num)
{
System.out.println("该数存在于数组中,下标为:"+i);
bl = true;
}
}
if(bl == false)
{
System.out.println(-1);
}
} //5题:求数组中的最大值和最小值
public void GetMaxMin(int[] array)
{
System.out.println("第5题");
int len = array.length;
int temp;
for(int i = 0;i<len;i++)
{
for(int j = 0;j<len-i-1;j++)
{
if(array[j]>array[j+1])
{
temp = array[j];
array[j] = array[j+1];
array[j+1] = temp;
}
}
} System.out.println("数组最大值为:"+array[len-1]);
System.out.println("数组最小值为:"+array[0]); } //第6题:给定一个数组,把这个数组中所有元素顺序进行颠倒。
public void UpDownLocation(int[] array)
{
System.out.println("第6题");
int len = array.length;
int temp = 0;
for(int i = 0;i<len;i++)
{
temp = array[len-1];
array[len-1] = array[i];
array[i] = temp;
len--;
}
} ///////////////////////////
public void PrintArray(int[] array)
{
int len = array.length;
for(int i = 0;i<len;i++)
{
System.out.print(array[i]+" ");
}
System.out.println();
} /////////////////////////// //第7题:按照从小到大的顺序排序,然后输出结果
public void BubbleSort(int[] array)
{
System.out.println("第7题");
int len = array.length;
int temp;
for(int i = 0;i<len;i++)
{
for(int j = 0;j<len-i-1;j++)
{
if(array[j]>array[j+1])
{
temp = array[j];
array[j] = array[j+1];
array[j+1] = temp;
}
}
}
} //第8题:用第二种算法对数组进行排序
public void MyChoiceSort(int array[])
{
System.out.println("第8题");
int len = array.length;
int temp;
for(int i = 0;i<len;i++)
{
for(int j = i+1;j<len;j++)
{
if(array[i]>array[j])
{
temp = array[j];
array[j] = array[j+1];
array[j+1] = temp;
}
}
}
} public static void main(String[] args) {
ArrayTest Myarray = new ArrayTest();
////
int[] array ={8,4,6,2,2,6,4,8};
Myarray.Average(array);
////
Myarray.IsExit(array, 5);
///
Myarray.GetMaxMin(array);
///
Myarray.UpDownLocation(array);
Myarray.PrintArray(array);
///
Myarray.BubbleSort(array);
Myarray.PrintArray(array);
///
Myarray.MyChoiceSort(array);
Myarray.PrintArray(array);
}
}

  

Java数组练习题小结的更多相关文章

  1. Java链表练习题小结

    链表 链表(Linked List)是一种常见的基础数据结构,是一种线性表,但是并不会按线性的顺序存储数据,而是在每一个节点里存到下一个节点的指针(Pointer).一个链表节点至少包含一个 数据域和 ...

  2. Java数组声明创建和使用以及多维数组、Arrays类、稀疏数组

    目录 数组概述 数组声明创建 内存分析 java内存分析 堆 栈 方法区 三种初始化 静态初始化 动态初始化 数组的默认初始化 数组的四个基本特点 数组边界 小结: 数组使用 数组基础使用 For E ...

  3. Java 数组

    数组对于每一门编程语言来说都是重要的数据结构之一,当然不同语言对数组的实现及处理也不尽相同. Java语言中提供的数组是用来存储固定大小的同类型元素. 你可以声明一个数组变量,如numbers[100 ...

  4. 第5章 Java数组

    1.什么是数组 数组可以想象成一个巨大的盒子,这个盒子里面存放的是同一个数据类型的数据 例如:int[] scores = {78,68,94,93}; 2.如何使用Java中的数组 2.1申明数组 ...

  5. Java 数组基础

    数组 数组(Array):相同类型数据的集合. 定义数组 方式1(推荐,更能表明数组类型) type[] 变量名 = new type[数组中元素的个数]; 比如: int[] a = new int ...

  6. Java数组及其内存分配

    几乎所有的程序设计语言都支持数组.Java也不例外.当我们需要多个类型相同的变量的时候,就考虑定义一个数组.在Java中,数组变量是引用类型的变量,同时因为Java是典型的静态语言,因此它的数组也是静 ...

  7. [转载]Java数组扩容算法及Java对它的应用

    原文链接:http://www.cnblogs.com/gw811/archive/2012/10/07/2714252.html Java数组扩容的原理 1)Java数组对象的大小是固定不变的,数组 ...

  8. Java数组技巧攻略

      Java数组技巧攻略 0.  声明一个数组(Declare an array) String[] aArray = new String[5]; String[] bArray = {" ...

  9. Java数组扩容算法及Java对它的应用

    1)Java数组对象的大小是固定不变的,数组对象是不可扩容的.利用数组复制方法可以变通的实现数组扩容.System.arraycopy()可以复制数组.Arrays.copyOf()可以简便的创建数组 ...

随机推荐

  1. NSDate常用代码范例

    NSDate常用代码范例 NSDate类用于保存时间值,同时提供了一些方法来处理一些基于秒级别时差(Time Interval)运算和日期之间的早晚比较等. 1. 创建或初始化可用以下方法 用于创建N ...

  2. C语言-基础

    程序是为了让计算机完成某项任务而编写的逐条执行的指令序列. C语言的特点是:结构化,语言简洁,功能强大,移植性好. 因为移植性好,所以大多数单片机如51.stm32,msp430,等众多嵌入式微处理器 ...

  3. cpsr当前程序状态寄存器

    详解CPSR寄存器(ls_core) (2012-10-11 17:29:47) 转载▼ 标签: arm920t寄存器 cpsr cpu工作原理 分类: 第四章-踏入嵌入式领域之ARM 在介绍CPSR ...

  4. php防止重复提交表单

    解决方案一:引入cookie机制来解决 提交页面代码如下a.php代码如下: <form id="form1" name="form1" method=& ...

  5. iOS 之 Strong与Weak,_unsafe _unretained与weak区别

    1. 在ARC中 strong(强引用) 相当于retain, weak(弱引用) 相当于assign.ARC下,strong告诉编译器自动插入retain.但是在ARC下,代理协议的属性依然用ass ...

  6. AFNetWorking 之 Get/Post 请求的使用

    1. Get 与 Post 比较 GET请求:简单业务.明文发送 POST请求:上传文件,重要信息.加密信息,.大数据信息. 2. 序列化 默认是JSon格式. // 请求的序列化 manager.r ...

  7. HDU-1995-汉诺塔V

    题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=1995 这题不知道该说水还是不水,对于这题我看到题目数据,就有了想法,因为题目数据给的好 所以我直接 假 ...

  8. Unity基础学习-Unity概述

    Unity 概述 Unity是一个强大的引擎,里面包括大量的工具用来满足各种各样的需求.Unity的编辑器是直观的可定制的,让您在您的工作流中有较大的自由度. 本小节是开始学习Unity的关键部分.里 ...

  9. Spark算子总结及案例

    spark算子大致上可分三大类算子: 1.Value数据类型的Transformation算子,这种变换不触发提交作业,针对处理的数据项是Value型的数据. 2.Key-Value数据类型的Tran ...

  10. 腾讯面试题:10G 个整数,乱序排列,要求找出中位数。内存限制为 2G。

    腾讯面试题:10G 个整数,乱序排列,要求找出中位数.内存限制为 2G. 题目和基本思路都来源网上,本人加以整理. 题目:在一个文件中有 10G 个整数,乱序排列,要求找出中位数.内存限制为 2G.只 ...