当前位置: 首页 > news >正文

上海都有哪些公司windows11优化大师

上海都有哪些公司,windows11优化大师,做网站除了广告还有什么收入的,图片生成二维码软件这篇就从简单一点的一个“奇偶排序”说起吧,不过这个排序还是蛮有意思的,严格来说复杂度是 O(N2),不过在多核的情况下,可以做到 N2 /(m/2)的效率,这里的 m 就是待排序的个数,当 m100,复杂度为 N…

这篇就从简单一点的一个“奇偶排序”说起吧,不过这个排序还是蛮有意思的,严格来说复杂度是 O(N2),不过在多核的情况下,可以做到 N2 /(m/2)的效率,这里的 m 就是待排序的个数,当 m=100,复杂度为 N2 /50,还行把,比冒泡要好点,因为重点是解决问题的奇思妙想。
下面我们看看这个算法是怎么描述的,既然是奇偶,肯定跟位数有关了

  1. 先将待排序数组的所有奇数位与自己身后相邻的偶数位相比较,如果前者大于后者,则进行交换,直到这一趟结束。
  2. 然后将偶数位与自己身后相邻的奇数位相比较,如果前者大于后者,则进行交换,直到这一趟结束。
  3. 重复 1,2 的步骤,直到发现无“奇偶”,“偶奇” 交换的时候,就认为排序完毕,此时退出循环。
① 待排序数组:                       9 2 1 6 0 7
② 所有奇数位与身后的相邻的偶数位比较交换    2 9 1 6 0 7
③ 所有偶数位与身后的相邻的奇数位比较交换    2 1 9 0 6 7
④ 所有奇数位与身后的相邻的偶数位比较交换    1 2 0 9 6 7
⑤ 所有偶数位与身后的相邻的奇数位比较交换    1 0 2 6 9 7
⑥ 所有奇数位与身后的相邻的偶数位比较交换    0 1 2 6 7 9

我们可以看到,经过 5 趟排序后,我们的数组就排序完毕了,从图中 ② 可以看到,如果每个线程分摊一个奇数位,那交换是不是只要一次就够了呢,可以看到这个算法在多核处理下面还是很有优势的。
最后的运行代码:

 using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Xml.Xsl;namespace ConsoleApplication1{class Program{static void Main(string[] args){List<int> list = new List<int>() { 9, 2, 1, 6, 0, 7 };Console.WriteLine("\n排序前 => " + string.Join(",", list));list = OddEvenSort(list);Console.WriteLine("\n排序后 => " + string.Join(",", list));Console.Read();}static List<int> OddEvenSort(List<int> list){var isSorted = false;//如果还没有排序完,就需要继续排序,知道没有交换为止while (!isSorted){//先默认已经排序完了isSorted = true;//先进行 奇数位 排序for (int i = 0; i < list.Count; i = i + 2){//如果 前者 大于 后者,则需要进行交换操作,也要防止边界if (i + 1 < list.Count && list[i] > list[i + 1]){var temp = list[i];list[i] = list[i + 1];list[i + 1] = temp;//说明存在过排序,还没有排序完isSorted = false;}}//再进行 奇数位 排序for (int i = 1; i < list.Count; i = i + 2){//如果 前者 大于 后者,则需要进行交换操作,也要防止边界if (i + 1 < list.Count && list[i] > list[i + 1]){var temp = list[i];list[i] = list[i + 1];list[i + 1] = temp;//说明存在过排序,还没有排序完isSorted = false;}}}return list;}}}

image.png

http://www.rdtb.cn/news/15506.html

相关文章:

  • wordpress新闻自媒体主题搜索引擎营销就是seo
  • 宿州建设企业网站公司google seo 优化招聘
  • 自己做网站视频教程磁力
  • 云开发技术宁波seo软件免费课程
  • 怎么使用织梦做网站推广方案万能模板
  • 桂林疫情最新政策惠州seo外包平台
  • 网站想要被收录要怎么做免费推广网站大全集合
  • 苏州网页设计师培训蜘蛛seo超级外链工具
  • 网站建设成都产品营销推广方案
  • 网站做关键词排行一个月多少钱百度推广外推联系方式
  • 专业找人公司是真的吗网站优化一年多少钱
  • 如何免费自做企业网站深圳市seo上词多少钱
  • 腾讯云服务器用什么做网站优化水平
  • 做网站能赚钱吗 知乎关键词的分类和优化
  • 网站怎么做搜索引擎才能收录哪里有软件培训班
  • 网站建设人员培训成都专业网站推广公司
  • 机关党建网站建设方案北京推广优化公司
  • 庆城县疫情关键词优化软件排行
  • 网站设计学习机构成功的网络营销案例
  • 欧洲男女做受视频网站网站关键词优化培训
  • 美国做电商网站有哪些2021年重大新闻事件
  • 建设银行的投诉网站首页社交媒体营销三种方式
  • 网站组件京东seo搜索优化
  • 网站建设小技巧黑帽seo优化
  • 微网站难做么网站快速优化排名app
  • 网站建设桔子科技十大短视频平台排行榜
  • 安康微平台成都网站建设seo
  • 最牛的网站建设营销型企业网站建设的内容
  • 网站存在的问题及改进措施东莞网络优化调查公司
  • 怎样用数据库做网站seo排名优化方式