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

全国工商企业查询平台绍兴seo网站管理

全国工商企业查询平台,绍兴seo网站管理,宣传片拍摄的意义,旅游做攻略网站说明:以下排序如无特别说明,都是从小到大升序排序 1. 冒泡排序 核心思想:每个元素与其相邻元素比较,如果前者大于后者则交换,每次循环结束后会将最大值放到最后,像小水泡从底下冒到上面成大水泡一样&…

说明:以下排序如无特别说明,都是从小到大升序排序

1. 冒泡排序

核心思想:每个元素与其相邻元素比较,如果前者大于后者则交换,每次循环结束后会将最大值放到最后,像小水泡从底下冒到上面成大水泡一样,如此循环,较大元素会逐渐冒泡到后面,直到最小的元素在最前面,完成从小到大排序。

public static void bubbleSort(int[] arr) {for (int i = 0; i < arr.length; i++) {// 注意由于是与下一个元素比较,故这里必须是 j < arr.length-i-1for (int j = 0; j < arr.length - i - 1; j++) {if (arr[j] > arr[j + 1]) {int temp = arr[j + 1];arr[j + 1] = arr[j];arr[j] = temp;}}}
}

时间复杂度 O(n^2);空间复杂度O(1);不稳定排序;原地排序

优化:

public static void bubbleSort(int[] arr) {for (int i = 0; i < arr.length; i++) {// 增加一个是否需要继续的标志boolean flag = false;for (int j = 0; j < arr.length - i - 1; j++) {if (arr[j] > arr[j + 1]) {int temp = arr[j + 1];arr[j + 1] = arr[j];arr[j] = temp;flag = true;}}// 比较一轮后发现所有元素都无需交换,即认为本来是有序的if (!flag) {break;}}
}

2. 选择排序

核心思想:对长度为 n 的数组,循环 n-1 次,每次循环将当前元素与后面的元素比较找出最小元素并交换。
常规思路一:比较时交换

public static void selectSort1(int[] arr) {for (int i = 0; i < arr.length - 1; i++) {int minIndex;for (int j = i + 1; j < arr.length; j++) {// 如果比当前元素小,就交换if (arr[j] < arr[i]) {minIndex = j;int temp = arr[i];arr[i] = arr[minIndex];arr[minIndex] = temp;}}}
}

优化思路二:比较完成后再交换

public static void selectSort(int[] arr) {// 每次循环找出最小元素索引,如果其与当前元素索引不同,则将其与当前元素索引交换for (int i = 0; i < arr.length - 1; i++) {int minIndex = i;for (int j = i + 1; j < arr.length; j++) {if (arr[j] < arr[minIndex]) {minIndex = j;}}if (minIndex != i) {int temp = arr[i];arr[i] = arr[minIndex];arr[minIndex] = temp;}}
}

时间复杂度 O(n^2);空间复杂度O(1);不稳定排序;原地排序

3. 插入排序

核心思想:从第二个元素开始将每个元素与其左边的元素对比,如果当前元素比其左边的元素小,就将其左边的元素往后移动,直到左边无比当前元素更大的元素,将当前元素插入到最左边,如此循环,较小的元素都会插入到合适的位置,最后完成排序。
在这里插入图片描述

public static void insertSort(int[] arr) {for (int i = 1; i < arr.length; i++) {int insertValue = arr[i];int insertIndex = i - 1;while (insertIndex >= 0 && insertValue < arr[insertIndex]) {arr[insertIndex + 1] = arr[insertIndex];insertIndex--;}if (insertIndex + 1 != i) {arr[insertIndex + 1] = insertValue;}}
}

参考

[1] 十大基础算法

http://www.zhongyajixie.com/news/50307.html

相关文章:

  • 网站布局教程重庆搜索引擎seo
  • 咸阳网站开发联系方式网站seo排名优化软件
  • 公务员 做网站盈利宁波优化系统
  • 网站设计改版网站优化的方法与技巧
  • 用asp.net做校园网站重庆关键词快速排名
  • 网站建设的公司哪家是上市公司灰色词快速排名方法
  • 做房产的网站排名360搜索首页网址是多少
  • dede网站搬家更换空间重新安装北京网站优化方法
  • 做网站排名要懂那些一周热点新闻
  • 做水处理药剂的公司网站口碑营销的形式
  • 电子商务网站建设外包服务的企业网络营销和推广做什么
  • 淘宝直接怎么做网站爱站seo工具
  • 呼和浩特建站旺道seo营销软件
  • 优猫券网站怎么做网络销售培训
  • 网站建设的技术方案模板下载系统优化软件推荐
  • 手机网站域名解析怎么做网络营销公司热线电话
  • 怎么样给一个网站做自然排名海淀网站建设公司
  • 上海微信网站制作哪家专业软文案例
  • 新乡市建设工程网站公司市场营销策划方案
  • 怎样在门户网站做 推广seo优化运营
  • 网站优化公司哪家靠谱谷歌推广怎么开户
  • 郑州网站建设哪里好seo短视频加密路线
  • php网站制作工具杭州seo关键词优化公司
  • 天津做网站的企业微博营销成功案例8个
  • 北京单页营销型网站制作黄页网站推广公司
  • 北京专业做网站seo运营是做什么的
  • 织梦网站文章内容模板广告词
  • wordpress首页调用评论企业网站seo优化外包
  • 女频做的最好的网站如何优化网络连接
  • seo做网站真的赚钱搜索引擎营销的英文缩写