news 2026/9/23 3:25:45

插入排序--自学笔记

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
插入排序--自学笔记

插入排序

学习目标:

1.插入排序的思想

2.移动法

3.交换法

4.复杂度分析

1.插入排序的思想

就像打扑克牌一样,在已排序的序列中,从后向前扫描,找到相应位置并插入

是一种“后来的数字”找自己位置的过程

从第二个数字 2 开始,取出待插入的数字 2 ,往前插入

数字 2 与 6 比较 2<6 所以 6 向右移动,将 2 插入

以此类推

直到最后一个数字插入后,排序完成

2.移动法

publicstaticvoidinsertSort(int[]arr){for(inti=1;i<arr.length;i++){intcurrentNumber=arr[i];intj=i-1;while(j>=0&&arr[j]>currentNumber){arr[j+1]=arr[j];j--;}//跳出循环的条件//1.遇到了一个比currentNumber小的数 则把currentNumber放到该数后面//2.j<0 说明整个数组currentNumber最小 把它放到开头arr[j+1]=currentNumber;}}

3.交换法

publicstaticvoidinsertSort(int[]arr){for(inti=1;i<arr.length;i++){intj=i;//j-1 值小于 j 则交换while(j>=1&&arr[j]<arr[j-1]){swap(arr,j,j-1);j--;}}}

4.复杂度分析

时间复杂度:O(n2)

​ *与冒泡、选择排序类似,都需要两层循环

空间复杂度:O(1)

​ *只引入了常数级别的变量

时间复杂度:O(n2)

​ *与冒泡、选择排序类似,都需要两层循环

空间复杂度:O(1)

​ *只引入了常数级别的变量

147. 对链表进行插入排序 - 力扣(LeetCode)

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/22 1:37:48

Three-DXF深度解析:在浏览器中实现专业级CAD文件渲染

Three-DXF深度解析&#xff1a;在浏览器中实现专业级CAD文件渲染 【免费下载链接】three-dxf A dxf viewer for the browser using three.js 项目地址: https://gitcode.com/gh_mirrors/th/three-dxf Three-DXF是一款基于Three.js的强大JavaScript库&#xff0c;专门用于…

作者头像 李华
网站建设 2026/9/22 16:41:52

P2MS:比特币的多重签名机制与比特鹰的技术解析

在比特币生态中&#xff0c;P2MS&#xff08;Pay To Multisig&#xff09;是实现资产多人共管的核心技术。通过多重签名机制&#xff0c;P2MS为机构与团队提供了更高的资金安全性。比特鹰将解析其技术逻辑、应用场景及潜在限制。P2MS技术原理&#xff1a;比特鹰的三步拆解 比特…

作者头像 李华
网站建设 2026/9/23 2:41:32

终极AI字幕生成指南:快速掌握智能字幕处理技巧

终极AI字幕生成指南&#xff1a;快速掌握智能字幕处理技巧 【免费下载链接】ComfyUI_SLK_joy_caption_two ComfyUI Node 项目地址: https://gitcode.com/gh_mirrors/co/ComfyUI_SLK_joy_caption_two ComfyUI字幕生成插件是一款强大的AI工具&#xff0c;能够为图像自动生…

作者头像 李华
网站建设 2026/9/22 2:23:27

C语言程序设计教学指导:突破误区,设计有效实验项目

在编程教育中&#xff0c;C语言教学具有基石地位。它不仅是理解计算机底层逻辑的关键&#xff0c;更是培养学生严谨计算思维的起点。然而&#xff0c;传统的C语言教学常陷入语法细节的泥潭&#xff0c;让学生感到抽象枯燥。有效的教学应超越语法本身&#xff0c;引导学生理解其…

作者头像 李华
网站建设 2026/9/23 14:18:16

DirectX 9.0b SDK介绍:核心组件、在游戏中的重要性

DirectX 9.0b SDK 是微软在2004年发布的一套关键开发工具包&#xff0c;主要用于图形、音频和多媒体程序的开发。它对当时的游戏和多媒体产业产生了深远影响&#xff0c;为开发者提供了稳定且功能丰富的API接口。理解其核心组件和历史地位&#xff0c;有助于我们认识实时图形技…

作者头像 李华
网站建设 2026/9/22 0:42:01

AgentWeb混合开发终极指南:5步实现原生与Web无缝融合

AgentWeb混合开发终极指南&#xff1a;5步实现原生与Web无缝融合 【免费下载链接】AgentWeb AgentWeb is a powerful library based on Android WebView. 项目地址: https://gitcode.com/gh_mirrors/ag/AgentWeb 在移动应用开发中&#xff0c;WebView与原生组件的割裂感…

作者头像 李华