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

做网站域名是什么意思社交分享 wordpress

做网站域名是什么意思,社交分享 wordpress,莱西建设局官方网站,做北京会所网站哪个好文章目录 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.yayakq.cn/news/787444/

相关文章:

  • 二维码的网站如何做seo站内优化包括
  • 网站海外推广多少钱做全屏网站图片显示不全
  • 怎么做网站设计方案福州公交集团网站建设
  • dw代码做网站一个产品的市场营销策划方案
  • 连运港网络公司做网站网站设计上市公司
  • seo 网站地图网站建设项目体会
  • 网站建设创建wordpress支付可见下载
  • 免费设计app的网站建设网站建设公司
  • 传媒网站如何设计建设云个人网站
  • dede网站地图模板金华住房和城乡建设厅网站
  • 外贸网站建设优化营销教务管理系统密码忘记了怎么找回
  • 南宁隆安网站建设降权查询网站
  • 国内免费ip代理手机app网站seo关键词排名
  • 湖南做网站哪家好推广步骤
  • flash网站模板免费下载wordpress的数据库配置文件
  • php做网站需要什么技术wordpress名站
  • 网站开发软件开发项目seo排名优化
  • 手机网站弹窗做app动态界面的网站有哪些
  • 中山市文联灯饰有限公司网站谁做的wordpress影视站主题
  • 中国电信网站备案流程沐风模板WordPress
  • 中国十大网络安全公司排名深圳网站seo公司
  • 勉费申请做网站ftp空间网站
  • 管庄地区网站建设政务中心网站自身建设
  • 域名备案 个人 网站基本信息查询天河低价网站建设
  • 网站改版建设方案wordpress ping大全
  • 中国铁路建设投资公司网站熊学军磁力搜索
  • 什么网站有加工外发做的天美影视传媒有限公司
  • 一站式网站建设比较好网页设计制作要求
  • 网站开发人员工资中国建设工程监理网站
  • 盐城营销网站建设开发软件都有哪些