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

b2b2c平台网站建设2024年3月新冠高峰

b2b2c平台网站建设,2024年3月新冠高峰,怎么做淘宝劵网站,建设互联网地方垂直网站排序 排序:把某个乱序的数组变成升序或降序的数组 (这里用数组来做举例) 归并排序 该排序属于 分治 策略将一个问题分解为两个问题来计算,计算完成之后,就会得到子任务的解,这些解不是最终问题的解,还需要merge起来…

排序

  • 排序:把某个乱序的数组变成升序或降序的数组 (这里用数组来做举例)

归并排序

  • 该排序属于 分治 策略
  • 将一个问题分解为两个问题来计算,计算完成之后,就会得到子任务的解,这些解不是最终问题的解,还需要merge起来

算法实现

// 归并排序
Array.prototype.mergeSort = function() {// 递归自身拆分const rec = (arr) => {let len = arr.length;if(len === 1) {return arr;}let m = Math.floor(len / 2); // 取中值let l = arr.slice(0, mid);let r = arr.slice(0, len);let lo = rec(l); // 递归下去,就变成了一个数组成的数组,最终有序 o => orderlet ro = rec(r); // 同上// 上面递归完成,开始进行合并操作let res = []; // 最终合并后的数组let lol = lo.length; // 左边数组长度let lor = ro.length; // 右边数组长度while(lol || lor) {if(lol && lor) {res.push(lo[0] < ro[0] ? lo.shift() : ro.shift())} else if(lol) {res.push(lo.shift())} else if(rol) {res.push(ro.shift())}}return res;}// 获取递归结果const r = rec(this);// 将有序数组拷贝到this上r.forEach((n, i) => {this[i] = n;});
}let arr = [5,4,3,2,1]
arr.insertionSort()
console.log(arr); // [1, 2, 3, 4, 5]
  • 性能好,火狐的sort方法
  • 思路
    • 分:把数组分成2半,再递归地对子数组进行"分"操作,直到分成一个个单独的数
    • 合:把两个数合并为有序数组,再对有序数组进行合并,直到全部子数组,合并为一个完整数组
      • 两个单独的数组成的数组,也是两个有序数组,这两个数组里都只有1个数
      • 合这个操作,就是不断合并有序数组
    • 如何合并两个有序数组
      • 新建一个空数组res, 用于存放最终排序后的数组
      • 比较两个有序数组的头部,较小者出队并推出res中
      • 如果两个数组还有值,就重复第二步
      • 两个数组都空了,合并完成
  • 时间复杂度:O(nlogn)
    • 分:每次把数组分成两半,用时 O(logn), log函数用于求2^? = n, 自然要?=log_2 n, 即 O(logn)
      • 注意,凡是分的操作,基本都是logn
    • 合:O(n), 一个while循环体
http://www.wangmingla.cn/news/53938.html

相关文章:

  • 手机租赁 网站开发chrome浏览器
  • 个人网站案例什么是关键词广告
  • 宜昌做网站要什么条件网站免费推广网站
  • ps网站CAD做PS地砖贴图黑五类广告推广
  • 淘宝官方网站登录注册seo搜索排名优化是什么意思
  • 顶尖的设计网站seoapp推广
  • 网站备案时间就是正式上线时间吗线下推广怎么做
  • 北京网站建设设计关键词举例
  • 门户网站意义怎么制作网址
  • 科技公司有哪些网站推广与优化平台
  • 网站网站建设专业阿里大数据分析平台
  • google建立网站公众号微博seo
  • 查项目经理有没有在建怎么查seo算法
  • 短期网页设计师培训seo建站的步骤
  • 基于phpmysql的网站开发怎么制作自己的网站
  • 地图销售网站北京百度关键词推广
  • 怎么样做一家卖东西的网站手机百度推广怎么打广告
  • 湖南企业做网站网站seo案例
  • 自己做的网站收录怎么提升百度q3财报2022
  • 网站自己做流量培训师资格证怎么考
  • 梁山网站建设费用百度地址
  • 网站开发的教学视频sem优化公司
  • 黄石做网站的公司网站模板图片
  • 阿里巴巴新网站怎么做运营西安搜建站科技网站
  • wordpress 移动商城主题网站seo分析工具
  • 如何做网站关键词霸屏推广怎么推
  • 济阳做网站多少钱北京网站优化经理
  • 微信php网站开发流程爱站网备案查询
  • 公众号推广渠道seo搜索引擎优化服务
  • WordPress多站点同步设置教育培训报名