全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
冒泡排序 namespace Sorter public class MainClass public static void Main() /int iArrary = new int 1, 2, 3, 6, 7 ; /最好的情况,外循环1次,内循环4次 ,为n-1,时间复杂度为n-1=O(n) int iArrary = new int 7, 6, 3, 2, 1 ; /最坏的情况,外循环4次,内循环分别4,3,2,1次 为n(n-1)/2,每次循环带来3次数据交换,所以时间复杂度为3*n*(n-1)/2=O(n2) /影响冒泡算法效率主要是交换数据带来的移动效率低 BubbleSort(iArrary); Console.Read(); /冒泡排序(Bubble Sort)的基本思想是:将相邻的记录的关键码进行比较,若前面记录的关键码大于后面记录的关键码,则将它们交换,否则不交换。 public static void BubbleSort(int list) int temp; bool IfChanged = false;/默认没有交换数据 for (int j = 1; j = list.Length -1; j+) for (int i = 0; i listi + 1) IfChanged = true; /交换了数据 temp = listi; listi = listi + 1; listi + 1 = temp; if (IfChanged = false) break; /如果没有发生数据交换,直接退出 IfChanged = false; /恢复默认值 Console.WriteLine(第 + j.ToString() + 次排序的结果); for (int m = 0; m list.Length; m+) Console.Write(0 , listm); Console.WriteLine(); 选择排序 using System;namespace SelectionSorter public class SelectionSorter private int min; public void Sort(int list) for (int i = 0; i list.Length - 1; i+) min = i; for (int j = i + 1; j list.Length; j+) if (listj listmin) min = j; int t = listmin; listmin = listi; listi = t; public class MainClass public static void Main() int iArrary = new int 1,3,2,7,6 ; SelectionSorter ss = new SelectionSorter(); ss.Sort(iArrary); for (int m = 0; m iArrary.Length; m+) Console.Write(0 , iArrarym); Console.WriteLine(); Console.Read(); 插入排序 using System;namespace InsertionSorter public class InsertionSorter public void Sort(int list) for (int i = 1; i 0) & (listj - 1 t) listj = listj - 1; -j; listj = t; public class MainClass public static void Main() int iArrary = new int 1,3,2,7,6 ; InsertionSorter ii = new InsertionSorter(); ii.Sort(iArrary); for (int m = 0; m iArrary.Length; m+) Console.Write(0, iArrarym); Console.WriteLine(); Console.Read(); 希尔排序 using System;namespace ShellSorter public class ShellSorter public void Sort(int list) int inc; for (inc = 1; inc 0; inc /= 3) for (int i = inc + 1; i inc) & (listj - inc - 1 t) listj - 1 = listj - inc - 1; j -= inc; listj - 1 = t; public class MainClass public static void Main() int iArrary = new int 1,3,2,7,6 ; ShellSorter sh = new ShellSorter(); sh.Sort(iA
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 企业员工考核制度
- 2026河南大学附属中学招聘77人备考题库附答案
- 养鸡配种技术培训课件
- 2026湖南张家界中共桑植县委组织部调工作人员2人招聘备考题库附答案
- 2026湖南长沙市雨花区育新第二小学春季合同制教师招聘参考题库附答案
- 2026福建南平市顺昌县工业园区开发有限公司招聘1人备考题库附答案
- 2026福建省空天信息产业发展有限公司招聘2人考试备考题库附答案
- 2026福建福州左海置地有限公司招聘20人参考题库附答案
- 2026贵州毕节市黔西市公安局招聘警务辅助人员70人参考题库附答案
- 2026重庆中医药学院附属璧山医院招聘37人备考题库附答案
- 2025年《思想道德与法治》期末考试题库及答案
- 2025初一英语阅读理解100篇
- 2026届四川省成都市青羊区树德实验中学物理九年级第一学期期末考试试题含解析
- 高温熔融金属冶炼安全知识培训课
- 林业种苗培育与管理技术规范
- 辽宁中考数学三年(2023-2025)真题分类汇编:专题06 几何与二次函数压轴题 解析版
- 修复征信服务合同范本
- 湖南省5年(2021-2025)高考物理真题分类汇编:专题11 近代物理(原卷版)
- 螺杆泵知识点培训课件
- 2025年及未来5年中国钠基膨润土市场深度评估及行业投资前景咨询报告
- 康复医学科进修汇报
评论
0/150
提交评论