`
王新振
  • 浏览: 992 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JAVA插入排序实现

阅读更多
实现方法一:
class InsertSort{

ArrayList al;

public InsertSort(int num,int mod){
al=new ArrayList(num);
Random rand=new Random();
System.out.println("需要排序的数组为:");
for(int i=0;i<num;i++){
al.add(i,new Integer((Math.abs(rand.nextInt()))%mod+1));
System.out.println("al["+i+"]="+al.get(i));
}
}

public void SortArray(){
int maxSize=1;
Integer temp;
for(int i=1;i<=al.size()-1;i++){
temp=(Integer)al.remove(i);
if(temp.intValue()>=((Integer)(al.get(maxSize-1))).intValue()){
al.add(i, temp);
maxSize++;
}else{
for(int j=0;j<al.size();j++){
if(temp.intValue()<=((Integer)(al.get(j))).intValue()){
al.add(j, temp);
maxSize++;
break;
}
}
}
}
System.out.println("排序后的数组为:");
for(int i=0;i<al.size();i++){
System.out.println("al["+i+"]="+al.get(i));
}
}

public static void main(String[] args){
InsertSort insertSort= new InsertSort(6,100);
insertSort.SortArray();
}
}


实现方法二:
class InsertSort2{
public static void main(String[] args){
int[] a={20,11,42,56,38,77};
int n=a.length;
int i,j;
int temp;
for(i=0;i<n;i++){
temp=a[i];
for(j=i;j>0 && temp<a[j-1];j--){
a[j] = a[j-1];
}
a[j]=temp;
}

for(i=0;i<n;i++){
System.out.println("a["+i+"]="+a[i]);
}
}
}
分享到:
评论

相关推荐

    java实现插入排序

    在Java中实现插入排序,主要涉及数组操作和循环控制,我们可以从以下几个方面来理解这个过程。 1. **基本概念** 插入排序在实际操作中类似于打扑克牌,每拿到一张新牌(数组中的元素),就将其插入到已排序的序列...

    插入排序Java代码

    接下来,我们将基于给定的部分代码,详细解析插入排序的Java实现。 ```java public static int[] cr(int[] arr) { for (int i = 1; i ; i++) { int tmp = arr[i]; int j = i - 1; while (tmp &gt; arr[j]) { // ...

    Java实现插入排序

    在Java中实现插入排序,我们可以按照以下步骤进行: 1. **基本思想**:将一个记录插入到已经排好序的有序表中,从而得到一个新的、记录数增1的有序表。可以想象成每次从无序序列中取出一个元素,找到它在有序序列中...

    JAVA实现插入排序

    JAVA实现插入排序,简单演示

    java插入排序与合并排序

    插入排序在实现上,通常采用in-place排序(即只需用到O(1)的额外空间的排序),因而在从后向前扫描过程中,需要反复把已排序元素逐步向后挪位,为最新元素提供插入空间。插入排序的时间复杂度在最好情况(已排序)下...

    用java实现插入排序InsertSort

    用java实现插入排序InsertSort 用java实现插入排序InsertSort用 java实现插入排序InsertSort

    插入排序的Java代码实现

    本文将详细讲解插入排序的概念、原理,并提供一个Java语言的实现示例。 插入排序是一种基本的排序算法,它的工作原理类似于我们平时整理扑克牌的过程。想象一下,你有一堆未排序的牌,每次取出一张牌,将其插入到已...

    插入排序 java实现

    在Java中实现插入排序,主要涉及以下几个关键步骤: 1. **初始化**:创建一个方法,如`public static void insertionSort(int[] arr)`,接收一个整数数组作为参数。 2. **外层循环**:遍历数组,从第二个元素...

    插入排序和归并排序的实现java

    这里我们将深入探讨两种常见的排序算法:插入排序(Insertion Sort)和归并排序(Merge Sort),它们都是在Java环境下实现的。 **插入排序**是一种简单直观的排序算法,它的工作原理是通过构建有序序列,对于未排序...

    java 直接插入排序

    下面我们将详细探讨Java实现的直接插入排序算法: 1. **算法步骤** - 初始化:设置一个空的有序序列,将第一个元素视为已排序。 - 遍历:从第二个元素开始遍历数组,将其称为当前元素。 - 比较:将当前元素与已...

    java插入排序

    ### Java插入排序程序详解 #### 一、程序概述 本文将详细介绍一个Java实现的插入排序算法。插入排序是一种简单直观的排序方法,其工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到...

    java冒泡排序,插入排序,堆排序源码(终端输入,可以选择排序方法)

    在本文中,我们将深入探讨Java编程中的三种基本排序算法:冒泡排序、插入排序和堆排序。这些排序算法是计算机科学中的基础知识,尤其对于初学者来说,理解和实现它们至关重要。我们将详细讲解每种排序算法的工作原理...

    冒泡排序、直接插入排序 等java代码

    本文将详细讨论两种常见的简单排序算法:冒泡排序和直接插入排序,它们都是基于比较的内部排序算法,并且在Java语言中实现。 **冒泡排序(Bubble Sort)** 冒泡排序是一种基础的排序算法,其基本思想是通过重复...

    Java直接插入排序算法源码

    总的来说,Java中的直接插入排序算法是一个直观易懂的排序方法,虽然在效率上不敌更高级的排序算法,但它在理解和实现上相对简单,对于初学者来说是很好的学习材料。通过阅读和实践这个源代码,你可以深入理解排序...

    Java 插入排序

    总结一下,Java插入排序是通过创建一个`InsertionSort`类,定义一个`sort`方法,对给定的一维整型数组进行逐个元素的比较和移动,从而达到排序的目的。这种方法直观易懂,但效率较低,适合于小规模或基本有序的数据...

    java 冒泡法、选择法、插入法排序实现代码

    在`Insert.java`文件中,插入排序的实现可能包括: - 初始化已排序部分为第一个元素,然后逐个将后续元素与已排序部分的元素比较,并在合适位置插入。 - 每次插入一个新元素,都会导致已排序部分增加一个元素。 ...

    快速和插入排序

    在`InsertionSort.java`文件中,应该有一个名为`insertionSort`的函数,实现插入排序的逻辑。 **测试** `test.java`文件可能是用来测试这两种排序算法的代码,它可能包含了主函数,用于创建测试数组,并调用快速...

    插入排序法JAVA代码

    以下是一个简单的Java插入排序算法实现: ```java public class InsertionSort { public static void insertionSort(int[] array) { for (int i = 1; i ; i++) { int key = array[i]; int j = i - 1; // 将比...

    直接插入排序java源码

    直接插入排序 java实现~你值得拥有~

Global site tag (gtag.js) - Google Analytics