冒泡排序/选择排序/插入排序(c#)
---恢复内容开始---
每次看这些排序都像没见过一样,完全理解不了,可是不久前明明了解的十分透彻。记下来记下来记下来!
1>>>冒泡排序:相邻的两两相比 把大的(或者小的)放后边,这样一轮下来,最下边的肯定是最大的数(或者最小的数)。重复arr.length次就能把arr按有序排列了。
class Program { static void Main(string[] args) { int[] arr = new int[] { 22, 11, 2, 9, 6 }; MP(arr); foreach (var v in arr) { Console.WriteLine(v); } Console.ReadLine(); } public static void MP(int[] a) { int temp; for (var i = 0; i < a.Length-1; i++)
{ for (var j = 0; j < a.Length - 1 - i; j++) { if (a[j] > a[j + 1]) { temp = a[j]; a[j] = a[j + 1]; a[j + 1] = temp; } } } } }
2>>>选择排序:从第一个数开始 依次将每个数 与他后边的数比较 并记录比较出的最小(最大)的数,然后交换位置。每轮下来就有一个最小(或最大)的数在【当前轮中的】第一位。这样比较结束时就是一个有序的数列。
class Program { static void Main(string[] args) { int[] arr = new int[] { 22, 11, 2, 9, 6 }; XZ(arr); foreach (var v in arr) { Console.WriteLine(v); } Console.ReadLine(); } public static void XZ(int[] a) { int temp; for (var i = 0; i < a.Length - 1; i++) { for (var j = i + 1; j < a.Length - i; j++) { if (a[j] < a[i]) { temp = a[j]; a[j] = a[i]; a[i] = temp; } } } } }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步