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

做海报去哪个网站找素材比较好呢百度搜索指数

做海报去哪个网站找素材比较好呢,百度搜索指数,推广营销网络,推荐一个两学一做的网站对版本号数组进行排序,比如:[0.1.2.3,1.2.1.0,4.2.1.0,0.1.2.0] 核心思路 将版本号拆分为数字数组,逐个比较每个子版本段。具体步骤: 拆分版本号:将每个版本字符串按 . 分割成数字数…

对版本号数组进行排序,比如:[0.1.2.3,1.2.1.0,4.2.1.0,0.1.2.0]


核心思路
将版本号拆分为数字数组,逐个比较每个子版本段。具体步骤:

  1. 拆分版本号:将每个版本字符串按 . 分割成数字数组
  2. 逐位比较:从高位到低位依次比较每个子版本段
  3. 处理长度差异:短版本号的缺失部分视为 0
  4. 降序/升序控制:根据比较结果返回排序依据

代码实现

function sortVersions(versions) {return versions.sort((a, b) => {const partsA = a.split('.').map(Number);  // 分割为数字数组 [0,1,2,3]const partsB = b.split('.').map(Number);const maxLen = Math.max(partsA.length, partsB.length);  // 最长版本位数for (let i = 0; i < maxLen; i++) {const numA = partsA[i] || 0;  // 超出长度部分补0const numB = partsB[i] || 0;if (numA !== numB) {return numB - numA;  // 降序排列(修改为numA - numB则为升序)}}return 0;  // 完全相等的情况});
}// 示例输入
const input = ['0.1.2.3', '1.2.1.0', '4.2.1.0', '0.1.2.0'];
console.log(sortVersions(input)); 
// 输出:[ '4.2.1.0', '1.2.1.0', '0.1.2.3', '0.1.2.0' ]

关键点解析

  1. 字符串转数字数组
    split('.') 切割后通过 map(Number) 转换为数值类型,避免字符串比较错误(如 "10" < "2"

  2. 补零处理长度差异
    使用 || 0 处理长度不一致的版本号,如 1.21.2.0 视为相等

  3. 循环比较逻辑
    逐位比较直到找到差异点,时间复杂度为 O(n)


应用场景优化

  1. 升序/降序切换
    修改 return numB - numAnumA - numB 即可实现升序排列

  2. 处理长版本号
    支持任意长度的版本号(如 1.2.3.4.5.6),最多可处理 10^3 量级的子版本号

  3. 特殊版本号扩展
    • 预发布版本:拆分 1.2.3-beta[1,2,3, 'beta'],自定义非数字部分的排序规则

    • 语义化版本:优先比较主版本号(Major),其次次版本号(Minor),最后修订号(Patch)


性能对比

方法时间复杂度适用场景缺陷
字符串直接比较O(n log n)纯数字且子版本位宽相同位宽不同时失效
大数加权法O(n log n)固定长度的语义化版本数值溢出风险
逐位比较法O(n log n)任意长度的数字版本号需处理类型转换

测试用例验证

// 测试案例
const testCases = [['1.10', '1.2'],        // 1.10 > 1.2['2.5', '2.5.0'],       // 相等['3.0.1', '3.0.0.9'],   // 3.0.1 > 3.0.0.9['0.1', '0.0.9999']    // 0.1 > 0.0.9999
];
testCases.forEach(tc => console.log(sortVersions(tc)[0])); 
// 输出均为第一个元素


文章转载自:

http://ZWR1d1tb.ndtzy.cn
http://J3yCizrD.ndtzy.cn
http://95PxZCNG.ndtzy.cn
http://cBOBHIij.ndtzy.cn
http://VgT1R7IH.ndtzy.cn
http://xNdrtP50.ndtzy.cn
http://MGG0gWDe.ndtzy.cn
http://h9nEUAdG.ndtzy.cn
http://41ZZI0da.ndtzy.cn
http://msoCJsWM.ndtzy.cn
http://CdetgoQq.ndtzy.cn
http://OE8GSBtL.ndtzy.cn
http://U3jaBf47.ndtzy.cn
http://xIyxdinB.ndtzy.cn
http://oNASQwEt.ndtzy.cn
http://M8VdluNv.ndtzy.cn
http://3aSjAsfB.ndtzy.cn
http://6uG3wkd3.ndtzy.cn
http://6VbDexde.ndtzy.cn
http://BuvgeKgT.ndtzy.cn
http://nEgi0cbI.ndtzy.cn
http://YEqUm5Fv.ndtzy.cn
http://Yt2DNSHj.ndtzy.cn
http://mTWlHlEs.ndtzy.cn
http://wvEaEtBG.ndtzy.cn
http://8Hc4WNiw.ndtzy.cn
http://rsG89s43.ndtzy.cn
http://u9tN3AKj.ndtzy.cn
http://3ES6GCvQ.ndtzy.cn
http://GRsho9Cr.ndtzy.cn
http://www.dtcms.com/wzjs/671608.html

相关文章:

  • 玩具网站规划说明书购物网站北京云无限优化
  • 做平台的网站有哪些功能吗六安网站设计公司
  • wordpress地图怎么实现海淀区seo多少钱
  • 怎样做网站推wordpress 手动采集
  • 网站设计 联系商城开源免费商用
  • 帝国网站地图模板wordpress 字体设置
  • 社交网站金山做网站的公司
  • 个人做地方门户网站关于建设门户网站的请示
  • django做待办事项网站会员管理系统手机免费版
  • 中山网站设计素材哪些网站可以做淘宝店招
  • 网站建设公司擅自关闭客户网络网站模板购买
  • 网站功能需求表wordpress企业
  • 做漂亮的网站上海建设公司网站
  • 做网站最重要的是什么软件开发工程师胜任力模型
  • 仙桃网站网站建设网页游戏怎么搭建
  • 天元建设集团有限公司青岛分公司张德平不干了网站在线seo
  • 电子商务网站建设教程pdf企业网站建设有什么好
  • 施工企业安全形势分析会宁波seo外包服务
  • 广东监理建设协会网站app制作程序
  • 建立网站需要注册公司吗网页毕业设计说明书
  • 外贸网站制作时间及费用成品直播软件源码在哪里
  • 手机网站静态模板输入关键词就能写文章的软件
  • 国外机械做的好的网站wordpress建站 东莞
  • 网站模板修改软件wordpress响应式插件
  • 织梦可以做视频网站么怎么查看网站收录
  • 网站安全检测服务linux系统 建网站
  • 网站毕业设计开题报告怎么开网店做电商
  • 设计师做单页的网站云南网站建设首选才力
  • 试析企业网站建设模式遵义网约车资格证
  • 网站建设ui设计灵芝产品网站建设方案