`

完美诠释java插入排序

 
阅读更多
package com.kaige.demo;
/**
* 插入排序(使用场景,7个元素以下的排序)
* */
public class straight_insertion_sort {
public static void InsertSort(int [] arr){
int i,j;//两个Int类型变量
int n=arr.length;//数组长度
int target;//临时值
for(i=1;i<n;i++){
j=i;
target=arr[i];
while(j>0&&target<arr[j-1]){
arr[j]=arr[j-1];//当临时值小于前一位元素值时,换位
j--;
}
arr[j]=target;
}
}

/**
* arr={3,1,6,4};
* 第一次分析:j=i=1;target=arr[1]=1; 满足while条件j>0&&1<3;移位 arr[1]=arr[0] -> 1364
* 第二次分析:j=i=2;target=arr[2]=6;不满足while;可得 1364;
* 第三次分析:j=i=3;target=arr[3]=4; 满足while条件j>0&&4<6;移位 arr[3]=arr[2] -> 1346
* */
public static void main(String[] args) {
int[] arr={3,1,6,4};
InsertSort(arr);
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
}
}
分享到:
评论

相关推荐

    c#【Unity】 排序算法【动画】诠释排序过程【一】【冒泡排序,选择排序,插入排序,归并排序,快速排序】

    博客地址:https://blog.csdn.net/qq_30259857/article/details/81071081 冒泡排序,选择排序,插入排序,归并排序,快速排序的 Unity Demo

    Visual C# 诠释常用排序算法

    本文将通过C#语言来诠释几种经典的排序算法,包括插入排序和选择排序,以帮助读者理解它们的基本思想、排序过程以及C#代码实现。 首先,我们来看插入排序。插入排序是一种简单直观的排序算法,其基本思想是通过构建...

    面试角度诠释Java工程师

    Comparator接口用于自定义比较规则,Comparable接口实现对象的自然排序。 再者,Java的IO流系统是处理输入输出的关键。字节流按字节读写,例如FileInputStream和FileOutputStream,操作文件时必须注意关闭流,防止...

    看的见的算法 7个经典应用诠释算法精髓(3)-排序算法可视化

    看的见的算法 7个经典应用诠释算法精髓(3)-排序算法可视化 04-Sort-Visualization 4-1 选择排序算法可视化..mp4 4-2 为可视化添加更多效果.mp4 4-3 插入排序可视化..mp4 4-4 在近乎有序的数据上测试插入排序算法....

    7经典应用诠释算法代码

    常见的排序算法有冒泡排序、插入排序、选择排序、快速排序、归并排序等。通过可视化,我们可以直观地看到数据在排序过程中的动态变化,这对于学习和优化算法效率至关重要。Java提供了丰富的数据结构和库函数,可以...

    MK网7款经典游戏 诠释高级算法精髓4-5章

    【MK网】7款经典游戏 诠释高级算法精髓4-5章 4-1 选择排序算法可视化..mp4 4-2 为可视化添加更多效果.mp4 4-3 插入排序可视化.mp4 4-4 在近乎有序的数据上测试插入排序算法..mp4 4-5 通过归并排序算法深入理解递归....

    JAVA中的单例模式诠释

    单例对象(Singleton)是一种常用的设计模式。在Java应用中,单例对象能保证在一个JVM中,该对象只有一个实例存在

    《Java WebSocket编程 开发、部署和保护动态Web应用

    精通Java WebSocket应用开发 ...本书诠释了如何设计客户端/服务器应用、与全双工消息通信协作、建立连接、创建端点、处理路径映射以及保护数据。你也将学到如何加密Web传输并且使用Java WebSocket增强既有应用。

    图解数据结构--使用Java

    全书内容浅显易懂,利用大量且丰富的图示与范例, 详解复杂的抽象理论,从最基本的数据结构概念开始 说明,再以Java工具加以诠释阵列结构、堆栈、链表 、队列、排序、查找等重要的概念,引领读者抓住重 点轻松进入...

    罗兰西尼2013广州建博会 完美诠释精品意式门窗

    总的来说,罗兰西尼通过参加广州建博会,展示了其在门窗行业的专业素养和对意式门窗的独特诠释,展现了品牌的力量和创新精神。无论是产品的设计、定制服务还是品牌战略,罗兰西尼都在不断探索和进步,力求为消费者...

    03 完美诠释中央空调系统 .docx

    【中央空调系统详解】 中央空调系统是现代建筑中不可或缺的设施,其设计目的是为了提供舒适、高效且节能的室内气候控制。这种系统主要由四个基本部分组成:冷热源系统、空气调整系统、冷却水循环系统以及冷冻水循环...

    java版飞鸽传书源码(Java局域网通信)

    这款应用的设计理念是对经典的“飞鸽传书”方式进行现代化的计算机技术诠释,使得用户可以通过简单的操作在局域网内的设备之间快速分享文件。 首先,我们要理解Java在局域网通信中的应用。Java提供了丰富的网络编程...

    Java虚拟机精讲.高翔龙.带书签完整版.pdf

    本书以极其精练的语句诠释了HotSpot VM 的方方面面,比如:字节码的编译原理、字节码的内部组成结构、通过源码的方式剖析HotSpot VM 的启动过程和初始化过程、Java 虚拟机的运行时内存、垃圾收集算法、垃圾收集器...

    word第1题的(10)插入脚注

    word第1题的(10)插入脚注,对脚注进行完美的诠释

    java版的俄罗斯方块(原创,含源代码)

    尽管可能不如商业级游戏那样完美,但它体现了编程的乐趣和挑战性,同时也是对经典游戏的一种独特诠释。对于学习者来说,这是一个很好的参考案例,可以帮助他们深入理解Java编程和游戏开发的基本原理。

    23种设计模式有趣诠释 23种设计模式有趣诠释

    23种设计模式有趣诠释 23种设计模式有趣诠释 23种设计模式有趣诠释

    快速排序算法

    快速排序c++的实现有解释附录,同时还对起的编写思路进行了诠释。

    java实现有限状态机

    用java语言实现有限状态机,这个简单地实例能全面地诠释状态机的思想

    2021-2022年收藏的精品资料软件工程师Java语言11个主要特性介绍诠释教程.docx

    Java 语言作为一款广泛应用于软件开发的编程语言,其特性主要体现在以下几个方面: 1) **简单性**:Java 语言的语法设计借鉴了C和C++,但它剔除了C++中的一些复杂特性,如指针操作和多继承,同时引入了自动垃圾回收...

    JAVA虚拟机精讲

    《Java虚拟机精讲》以极其精练的语句诠释了HotSpot VM 的方方面面,比如:字节码的编译原理、字节码的内部组成结构、通过源码的方式剖析HotSpot VM 的启动过程和初始化过程、Java 虚拟机的运行时内存、垃圾收集算法...

Global site tag (gtag.js) - Google Analytics