java插入排序法 代码示例

xl1407

温馨提示:这篇文章已超过298天没有更新,请注意相关的内容是否还可用!

java插入排序法 代码示例

插入排序是一种简单直观的排序算法,它的基本思想是将待排序的元素逐个插入到已排序的序列中,直到所有元素都插入完毕。在插入的过程中,需要不断地比较待插入元素与已排序序列中的元素,找到合适的位置插入。

下面是一个使用Java实现的插入排序的示例代码:

public class InsertionSort {

public static void insertionSort(int[] arr) {

int n = arr.length;

for (int i = 1; i < n; ++i) {

int key = arr[i];

int j = i - 1;

// 将比 key 大的元素向后移动

while (j >= 0 && arr[j] > key) {

arr[j + 1] = arr[j];

j = j - 1;

}

arr[j + 1] = key;

}

}

public static void main(String[] args) {

int[] arr = {5, 2, 8, 3, 1};

insertionSort(arr);

System.out.println("排序后的数组:");

for (int i : arr) {

System.out.print(i + " ");

}

}

}

在上述代码中,我们定义了一个名为`insertionSort`的静态方法,该方法接受一个整型数组作为参数。我们获取数组的长度,并使用一个循环来遍历待排序的元素,从第二个元素开始(索引为1)。

在每一次循环中,我们将当前元素保存在变量`key`中,并将变量`j`初始化为当前元素的前一个位置。然后,我们通过一个循环将比`key`大的元素向后移动,直到找到合适的位置插入`key`。

我们将`key`插入到正确的位置,并继续下一次循环,直到所有元素都插入完毕。

在示例代码中,我们使用了一个简单的整型数组`arr`作为输入,并在`main`方法中调用`insertionSort`方法对其进行排序。我们打印排序后的数组。

通过以上示例代码,我们可以看到插入排序的具体实现过程,并理解其基本思想。

文章版权声明:除非注明,否则均为莫宇前端原创文章,转载或复制请以超链接形式并注明出处。

取消
微信二维码
微信二维码
支付宝二维码