标签:package bool 指定 java class val ems bre 一个
常见的算法有非常多,今天我们就一起看看常见的算法之冒泡排序。 下面来看看我们的实例代码:
1、准备我们的数组
2、准备数组的常用操作方法
3、编写冒泡排序算法
4、测试冒泡排序算法的正确性;
package com.zcp.ch02;
/**
冒泡排序的实现
*/
public class BubbleArray {
//数组
private long[] arr = null;
//数组中有效数据的大小
private int elems;
public BubbleArray() {
arr = new long[50];
}
public BubbleArray(int length){
arr = new long[length];
}
/**
/**
@return
*/
public int find(long value){
int i = 0;
for(i=0;i<elems;i++){
if(value==arr[i])
break;
}
if(i >(elems-1)){
return -1;
}
return i;
}
/***
@param value
*/
public boolean delete(long value){
int key = find(value);
if(key == -1){
System.out.println("删除数据失败,未查找到要删除的数据");
return false;
}
for (int i = key; i < elems; i++) {
arr[i] = arr[i+1];
}
elems--;
return true;
}
/***
/**
否则就数组越界了
*/
public void bubbleSort(){
for (int i = 0; i < elems-1; i++) {
for (int j = 0; j < elems-i-1; j++) {
if(arr[j]>arr[j+1]){
long tmp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = tmp;
}
}
}
}
/**
}
测试代码如下:
package com.zcp.ch02;
public class TestBubbleMain {
public static void main(String[] args) {
BubbleArray bubbleArray = new BubbleArray();
bubbleArray.insert(10);
bubbleArray.insert(50);
bubbleArray.insert(80);
bubbleArray.insert(2);
bubbleArray.insert(5);
bubbleArray.disPlay();
bubbleArray.bubbleSort();
System.out.println("冒泡排序后的数据如下:");
bubbleArray.disPlay();
}
}
标签:package bool 指定 java class val ems bre 一个
原文地址:http://blog.51cto.com/7298246/2154933