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

开发网站网络公司有哪些如何做市场推广方案

开发网站网络公司有哪些,如何做市场推广方案,保定哪有做网站的,武汉市建设局官网文章目录 TypeScript 算法手册 - 冒泡排序1. 冒泡排序简介1.1 冒泡排序定义1.2 冒泡排序特点 2. 冒泡排序步骤过程拆解2.1 比较相邻元素2.2 交换元素2.3 重复过程 3. 冒泡排序的优化3.1 提前退出3.2 记录最后交换位置案例代码和动态图 4. 冒泡排序的优点5. 冒泡排序的缺点总结 …

文章目录

  • TypeScript 算法手册 - 冒泡排序
    • 1. 冒泡排序简介
      • 1.1 冒泡排序定义
      • 1.2 冒泡排序特点
    • 2. 冒泡排序步骤过程拆解
      • 2.1 比较相邻元素
      • 2.2 交换元素
      • 2.3 重复过程
    • 3. 冒泡排序的优化
      • 3.1 提前退出
      • 3.2 记录最后交换位置
      • 案例代码和动态图
    • 4. 冒泡排序的优点
    • 5. 冒泡排序的缺点
    • 总结

在这里插入图片描述

【 已更新完 TypeScript 设计模式 专栏,感兴趣可以关注一下,一起学习交流🔥🔥🔥 】

TypeScript 算法手册 - 冒泡排序

1. 冒泡排序简介

1.1 冒泡排序定义

冒泡排序是一种简单的排序算法,重复地遍历要排序的数列,一次比较两个元素,他们的顺序错误就把他们交换过来。这个过程就像水底的气泡一样从底部向上"冒泡"到水面,这也是冒泡排序名字的由来。

用 TypeScript 代码表示一个简单的冒泡排序:

function bubbleSort(arr: number[]): number[] {const len = arr.length;for (let i = 0; i < len - 1; i++) {for (let j = 0; j < len - 1 - i; j++) {if (arr[j] > arr[j + 1]) {[arr[j], arr[j + 1]] = [arr[j + 1], arr[j]];}}}return arr;
}

1.2 冒泡排序特点

  1. 简单直观: 冒泡排序是最简单的排序算法之一
  2. 稳定性: 冒泡排序是一种稳定的排序算法
  3. 原地排序: 冒泡排序是原地排序算法,不需要额外的存储空间

2. 冒泡排序步骤过程拆解

2.1 比较相邻元素

// 交换元素
if (arr[j] > arr[j + 1]) {
}

2.2 交换元素

// 交换元素
[arr[j], arr[j + 1]] = [arr[j + 1], arr[j]];

2.3 重复过程

// 比较和交换
for (let i = 0; i < len - 1; i++) {for (let j = 0; j < len - 1 - i; j++) {}
}

3. 冒泡排序的优化

3.1 提前退出

// 提前退出
function bubbleSortOptimized(arr: number[]): number[] {const len = arr.length;for (let i = 0; i < len - 1; i++) {let swapped = false;for (let j = 0; j < len - 1 - i; j++) {if (arr[j] > arr[j + 1]) {[arr[j], arr[j + 1]] = [arr[j + 1], arr[j]];swapped = true;}}if (!swapped) break;}return arr;
}

3.2 记录最后交换位置

// 记录最后交换位置
function bubbleSortFurther(arr: number[]): number[] {let lastExchangeIndex = 0;let sortBorder = arr.length - 1;for (let i = 0; i < arr.length - 1; i++) {let isSorted = true;for (let j = 0; j < sortBorder; j++) {if (arr[j] > arr[j + 1]) {[arr[j], arr[j + 1]] = [arr[j + 1], arr[j]];isSorted = false;lastExchangeIndex = j;}}sortBorder = lastExchangeIndex;if (isSorted) break;}return arr;
}

案例代码和动态图

const array = [29, 10, 14, 66, 37, 14];
const sortedArray = bubbleSort(array);
console.log(sortedArray); // [10, 14, 14, 29, 37, 66]

在这里插入图片描述

4. 冒泡排序的优点

  1. 代码简单,容易理解
  2. 稳定排序
  3. 原地排序,不需要额外空间

5. 冒泡排序的缺点

  1. 时间复杂度较高,为 O(n^2)
  2. 交换次数过多

总结

冒泡排序是一种简单直观的排序算法,虽然效率不高,但是在处理小规模数据或者基本有序的数据时还是很有用的。理解冒泡排序的原理对于学习更复杂的排序算法也很有帮助。

喜欢的话就点个赞 ❤️,关注一下吧,有问题也欢迎讨论指教。感谢大家!!!

下期预告: TypeScript 算法手册 - 选择排序

http://www.hkea.cn/news/624491/

相关文章:

  • 购物网站 购物车界面如何做百度搜索网
  • 推广网站的图片怎么做外贸平台
  • 新手如何给自己的网站做优化bt种子磁力搜索
  • 成都学校网站制作遵义网站seo
  • d?t网站模版宁波seo在线优化哪家好
  • c做的网站淄博做网站的公司
  • 网站开发制作公司郑州网站建设外包
  • 注册域名用个人还是公司好长沙seo优化排名
  • 电子商务网站建设与维护展望今日新闻联播
  • 网站建设主流技术站长之家ping检测
  • 温州建设集团有限公司网站首页百度手机版网页
  • 广西网络干部学院官网seo推广人员
  • 可以做红娘的相亲网站江北seo综合优化外包
  • 公司建设网站需要注意什么软文广告示范
  • 高端网站建设 引擎技企业网页
  • 模仿别人网站百度外链查询工具
  • 教程建设网站广告免费发布信息平台
  • wordpress php5.4支持宁波seo排名优化
  • 宁波制作网站哪个好百度怎么发自己的小广告
  • 新浪网站用什么语言做的百度软件下载
  • wordpress如何做网站重庆seo俱乐部联系方式
  • 教育局两学一做网站深圳全网推广平台
  • 淘宝做详情页代码网站免费大数据查询平台
  • 苹果做安卓游戏下载网站好新媒体营销案例ppt
  • 网络营销实务关键词优化seo优化排名
  • 网站推广优化教程游戏代理加盟平台
  • 网站提升权重全国疫情高峰感染进度
  • 营销型网站怎么做智能建站abc
  • 捷信做单官方网站网络服务主要包括什么
  • 网站建设的方案费用什么时候网络推广