第1次排序:4,5,3,7,6,1,
第2次排序:3,4,5,7,6,1,
第3次排序:3,4,5,7,6,1,
第4次排序:3,4,5,6,7,1,
第5次排序:1,3,4,5,6,7,
排序后的数组:1,3,4,5,6,7,
package datastructure;
public class InsertSort {
public InsertSort() {
}
public static void inertSort(int[] datas) {
for (int i = 0; i < datas.length - 1; i++) {
for (int j = i + 1; j > 0; j--) {
if (datas[j] < datas[j - 1]) {
int tmp = datas[j];
datas[j] = datas[j - 1];
datas[j - 1] = tmp;
}
}
System.out.print("第" + (i + 1) + "次排序:");
for (int j = 0; j < datas.length; j++) {
System.out.print(datas[j] + ",");
}
System.out.println();
}
}
public static void main(String[] args) {
int[] datas = { 5, 4, 3, 7, 6, 1 };
InsertSort.inertSort(datas);
System.out.print("排序后的数组:");
for (int i = 0; i < datas.length; i++) {
System.out.print(datas[i] + ",");
}
}
}
分享到:
相关推荐
说一说插入排序 插入排序的基本操作就是将一个数据插入到已经排序好序的数据中,从而得到一个新的,个数加一的有序数据,算法适用与少量的数据的排序。时间复杂度O(n^2),是稳定的排序算法。 基本思想:每步将一个待...
排序算法-----插入算法
Java 简单插入排序实例详解 插入排序是一种简单且实用的排序算法,本文将详细介绍 Java 实现的插入排序实例,并对其进行性能分析。 一、基本概念 插入排序的基本操作就是将一个数据插入到已经排好序的有序数据中...
插入排序是一种简单直观的排序算法,非常适合小规模数据集的排序。该算法通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。插入排序在实现上,通常采用in-place排序,即只需用到...
**插入排序**是一种简单直观的排序算法,它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。本文将详细介绍Java实现的插入排序算法,并分析其效率。 ### 算法原理...
**插入排序**是一种简单直观的排序算法,它的工作原理类似于我们日常生活中整理扑克牌的过程。在计算机科学中,插入排序通常用于小规模数据或者部分有序的数据,它的效率相对较低,但对于部分有序的数据,插入排序...
根据给定的文件信息,我们可以总结出以下关于“C++实现插入排序”的相关知识点: ### 一、插入排序算法概述 插入排序(Insertion Sort)是一种简单直观的比较排序算法。它的工作原理是通过构建有序序列,对于未...
插入排序是一种基础且直观的排序算法,其工作原理类似于我们日常生活中的整理扑克牌。在Java中实现插入排序,我们可以按照以下步骤进行: 1. **基本思想**:将一个记录插入到已经排好序的有序表中,从而得到一个新...
### 直接插入排序知识点详解 #### 一、概念及介绍 **直接插入排序**(Insertion Sort),作为基础排序算法之一,在数据量较小的情况下表现出较高的效率。该算法的基本思想是将一个待排序的记录插入到一个已排序的...
直接插入排序(straight insertion sort)的做法是: 每次从无序表中取出第一个元素,把它插入到有序表的合适位置,使有序表仍然有序。 第一趟比较前两个数,然后把第二个数按大小插入到有序表中; 第二趟把第三个数据...
"C语言排序算法之插入排序" 插入排序是C语言中的一种常用的排序算法,它的实现思路是将一个数组分成已排序和未排序两部分,然后逐步将未排序部分的元素插入到已排序部分中,直到整个数组都被排序。 InsertSort函数...
### 简单插入排序详解 #### 一、基本概念 简单插入排序是一种直观且易于理解的排序算法,其核心思想是将一个无序数组逐步转换为有序数组。按照简单的插入排序逻辑,整个排序过程可以被视为两个部分:有序区与无序...
直接插入排序是一种简单的排序算法,它的基本思想是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。在Java中,实现直接插入排序通常涉及一个for循环来遍历数组,以及一个内部...
快速排序和插入排序是两种广泛使用的排序算法,它们在计算机科学和编程中有着重要的地位,尤其是在数据处理和算法分析方面。下面将详细讲解这两种排序算法的原理、Java实现及其特点。 **快速排序** 快速排序是一种...
插入排序是一种简单直观的排序算法,它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。减治法是一种问题解决策略,通常用于递归算法中,将大问题分解为小问题,...
冒泡排序、选择排序和插入排序是三种基本的排序算法,它们都是针对数组或列表进行操作,目的是将无序的数据序列调整为升序或降序的有序序列。 **冒泡排序**: 冒泡排序的核心思想是通过重复遍历待排序的数列,比较...
### Python 插入排序算法实例分析 #### 一、插入排序基本概念 插入排序是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。插入排序在...