java实现的用插入法进行排序
2017-10-19 10:34
239 查看
用java实现一种排序,java类型实现序列化的方法(二种)?如在collection框架中,实现比较要实现什么养的接口?
/**
* 用插入法进行排序代码实现如下:
*/
import java.util.ArrayList;
import java.util.Random;
public class InsertSort {
ArrayList al;// 定义一个链表;
public InsertSort(int num, int mod) {
al = new ArrayList(num);// 实例化一个链表
Random random = new Random();// 去一个随机数
System.out.println("The ArrayList Sort Before:");
for (int i = 0; i < num; i++) {
al.add(new Integer(Math.abs(random.nextInt()) % mod + 1));//
System.out.println("al[" + i + "]=" + al.get(0));
}
}
public void SortIt() {
Integer tempInt;
int MaxSize = 1;
for (int i = 1; i < al.size(); i++) {
tempInt = (Integer) al.remove(i);
if (tempInt.intValue() >= ((Integer) al.get(MaxSize - 1))
.intValue()) {
al.add(MaxSize, tempInt);
MaxSize++;
System.out.println(al.toString());
} else {
for (int j = 0; j < MaxSize; j++) {
if (((Integer) al.get(j)).intValue() >= tempInt.intValue()) {
al.add(j, tempInt);
MaxSize++;
System.out.println(al.toString());
break;
}
}
}
}
System.out.println("The ArrayList Sort After:");
for (int i = 0; i < al.size(); i++) {
System.out.println("al[" + i + "]=" + al.get(i));
}
}
public static void main(String[] args) {
InsertSort is = new InsertSort(10, 100);
is.SortIt();
}
}
/**
* 用插入法进行排序代码实现如下:
*/
import java.util.ArrayList;
import java.util.Random;
public class InsertSort {
ArrayList al;// 定义一个链表;
public InsertSort(int num, int mod) {
al = new ArrayList(num);// 实例化一个链表
Random random = new Random();// 去一个随机数
System.out.println("The ArrayList Sort Before:");
for (int i = 0; i < num; i++) {
al.add(new Integer(Math.abs(random.nextInt()) % mod + 1));//
System.out.println("al[" + i + "]=" + al.get(0));
}
}
public void SortIt() {
Integer tempInt;
int MaxSize = 1;
for (int i = 1; i < al.size(); i++) {
tempInt = (Integer) al.remove(i);
if (tempInt.intValue() >= ((Integer) al.get(MaxSize - 1))
.intValue()) {
al.add(MaxSize, tempInt);
MaxSize++;
System.out.println(al.toString());
} else {
for (int j = 0; j < MaxSize; j++) {
if (((Integer) al.get(j)).intValue() >= tempInt.intValue()) {
al.add(j, tempInt);
MaxSize++;
System.out.println(al.toString());
break;
}
}
}
}
System.out.println("The ArrayList Sort After:");
for (int i = 0; i < al.size(); i++) {
System.out.println("al[" + i + "]=" + al.get(i));
}
}
public static void main(String[] args) {
InsertSort is = new InsertSort(10, 100);
is.SortIt();
}
}
相关文章推荐
- 【Java学习笔记】实现Comparator接口来进行字符串逆向排序
- Java:对集合中的对象进行排序需要实现Interface Comparable接口并实现int compareTo(T o)方法
- Java 中 Map 根据键值 (key) 或者值 (value) 进行排序实现
- 对公司员工年龄进行排序,java实现
- java实现对一个字符串中的数值进行从小到大的排序
- Java编程之TreeSet排序两种解决方法(1)元素自身具备比较功能,元素需要实现Comparable接口覆盖compare(2)创建根据自定义Person类的name进行排序的Comparator
- JAVA 实现在内存中对列表进行排序
- Java中Map根据键值(key)或者值(value)进行排序实现
- Java中Map根据键值(key)或者值(value)进行排序实现
- java字符串数组进行大小排序的简单实现
- java 使用面向对象方式实现录入学生信息,取出成绩最大值、最小值、平均值、对其进行排序
- [Java]实现冒泡算法,对数组元素进行排序
- Java中Map根据键值(key)或者值(value)进行排序实现
- Java对List进行排序的两种实现方法
- java 实现List对象中按某种方式进行排序
- 关于java中实现在oracle数据库中实现对中文首字母进行排序的解决方案
- JAVA_WEB项目之Lucene实现检索结果排序和关键字在索引库中多字段查询结果进行高亮显示
- Java 对10个数进行排序的实现代码
- Java中Map根据键值(key)或者值(value)进行排序实现
- Java中Map根据键值(key)或者值(value)进行排序实现