简单排序
一冒泡排序
二选择排序
三插入排序
下面我们分步讲一下这三种排序。首先来看一下冒泡排序。
package ch02; public class BubbleSort { public static void sort(long [] arr){ long temp = 0; for (int i = 0;i<arr.length-1;i++) {//i表示第几趟排序 for (int j = arr.length-1;j>i;j--) { if (arr[j] <arr[j-1]) { //交换 temp = arr[j]; arr[j] = arr[j-1]; arr[j-1] = temp; } } } } public static void main(String[] args) { long[]arr = new long[5]; arr[0] = 34; arr[1] = 23; arr[2] = 1; arr[3] = 2; sort(arr); for (int i = 0;i<arr.length;i++) { System.out.print(arr[i]+" "); } } }
2:选择排序:代码实现
package ch02; public class SelectionSort { public static void sort(long [] arr){ int k = 0; long temp = 0; for (int i = 0;i<arr.length;i++) {//趟数 k = i; for (int j = i;j<arr.length;j++) { if (arr[j] < arr[k]) {//选择最小的交换 k = j; } }
//交换 temp = arr[i]; arr[i] = arr[k]; arr[k] = temp; } } public static void main(String[] args) { long[]arr = new long[5]; arr[0] = 34; arr[1] = 23; arr[2] = 1; arr[3] = 2; sort(arr); for (int i = 0;i<arr.length;i++) { System.out.print(arr[i]+" "); } } }
3,插入排序:代码实现(代码有问题)
package ch02; public class InsertSort { public static void sort(long [] arr){ long temp = 0; for (int i = 1;i<arr.length;i++) { temp = arr[i]; int j = i; while (j > 0 && arr[j] >= temp) { arr[j] = arr[j-1]; j--; } arr[j] = temp; } } public static void main(String[] args) { long[]arr = new long[5]; arr[0] = 34; arr[1] = 23; arr[2] = 1; arr[3] = 2; arr[4] = 0; sort(arr); for (int i = 0;i<arr.length;i++) { System.out.print(arr[i]+" "); } } }
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· ASP.NET Core 模型验证消息的本地化新姿势
· 对象命名为何需要避免'-er'和'-or'后缀
· SQL Server如何跟踪自动统计信息更新?
· AI与.NET技术实操系列:使用Catalyst进行自然语言处理
· 分享一个我遇到过的“量子力学”级别的BUG。
· AI Agent爆火后,MCP协议为什么如此重要!
· Draw.io:你可能不知道的「白嫖级」图表绘制神器
· dotnet 源代码生成器分析器入门
· ASP.NET Core 模型验证消息的本地化新姿势
· Windows核心编程 进程与线程