public class Problem04_InsertSort {public static void main(String[] args) {int[] array = {8, 5, 6, 7, 2, 9, 4, 5, 4, 6, 7, 1, 5, 8, 9, 3, 1};printArray(array);insertSort(array);printArray(array);}/**** @author Silent_W* @Description 插入排序* @date 2022/3/8 17:43* @param [array]* @return void*/private static void insertSort(int[] array) {//临界值判断if (array == null || array.length < 2){return;}int N = array.length;//0 ~ 0 完成//0 ~ 1//0 ~ 2//0 ~ N - 1for (int end = 1; end < N; end++){//当前索引位置int newNumIndex = end;//当当前索引位置的左边有值并且左边的值大于当前的值while (newNumIndex - 1 >= 0 && array[newNumIndex - 1] > array[newNumIndex]) {//交换swap(array, newNumIndex,newNumIndex - 1);//当前位置减一newNumIndex --;}}}/**** @author Silent_W* @Description 打印数组* @date 2022/3/8 17:30* @param [array]* @return void*/private static void printArray(int[] array){for (int i = 0; i < array.length; i++) {System.out.print(array[i] + " ");}System.out.println();}/**** @author Silent_W* @Description 交换数组元素* @date 2022/3/8 17:30* @param [array, i, j]* @return void*/private static void swap(int[] array, int i, int j){int temp = array[i];array[i] = array[j];array[j] = temp;}
}
详细解决方案
算法第一天:插入排序
热度:35 发布时间:2023-12-29 04:19:56.0
相关解决方案
- 插入排序——减半插入排序
- php中的冒泡排序,取舍排序,插入排序
- PHP 常见算法【冒泡排序, 快速排序, 插入排序, 取舍排序, 二分法查找, .】
- 【排序算法】插入排序【JS兑现】
- 插入排序、快速排序跟php面向对象的知识
- php中的冒泡排序,取舍排序,插入排序
- PHP 常见算法【冒泡排序, 快速排序, 插入排序, 取舍排序, 二分法查找, .】
- 排序---插入排序
- java的计数,选择,冒泡,插入排序
- 算法面试--插入排序
- 插入排序 Insertion Sort Aizu - ALDS1_1_A
- Java实现排序算法(冒泡排序、选择排序、插入排序、二分查找排序)
- 详解——冒泡排序、插入排序、选择排序、桶排序
- 【python】python数据结构(六)——排序:插入排序
- 八大排序算法(一)--------插入排序、Shell排序
- 算法导论 第二章 例子与习题代码 插入排序 归并排序
- 算法导论 之 插入排序[C语言]
- 冒泡排序,插入排序,选择排序(java)
- 排序算法-插入排序(IntertionSort)
- 插入排序 java
- 算法第一天:插入排序
- 基础排序算法之——选择排序,插入排序,快速排序
- JAVA 插入排序(直接插入)
- 七大排序算法(1)------冒泡,选择,插入排序
- 简单的排序算法——插入排序,选择排序,交换排序(冒泡排序,快速排序)
- 插入排序(直接插入排序和希尔(shell)排序
- 十大排序:插入排序
- 排序-----------------插入排序,冒泡排序
- 数据结构与算法——插入排序——使用C++实现函数模板
- 四个算法排序 1.选择排序 2.冒泡排序 3.插入排序 4.希尔排序