剑指Offer——把数组排成最小的数(JS实现)

简介: 剑指Offer——把数组排成最小的数(JS实现)

题目描述

image.png

解题思路

  • 首先想到了使用DFS进行全排列,然后使用sort进行排序,发现超时,所以全排列DFS的方法行不通。
  • 最后还是通过JS自带的sort函数进行比较a+b和b+a来进行排序,最终通过了AC

解题代码

var minNumber = function(nums) {
    for (let i = 0; i < nums.length;i++) {
        nums[i] = String(nums[i])
    }
    nums.sort((num1,num2) => (num1 + num2) - (num2 + num1));
    return nums.join('')
};

实现效果

image.png

总结(本题给我们的启示思路)

  • 启示一:学会使用sort传参
  • 启示二:最好能够手写快排
相关文章
|
14天前
|
存储 JavaScript 索引
JS中数组的相关方法介绍
JS中数组的相关方法介绍
|
14天前
|
JavaScript Java
JS有趣的灵魂 清空数组
JS有趣的灵魂 清空数组
|
1天前
|
存储 JavaScript 索引
js开发:请解释什么是ES6的Map和Set,以及它们与普通对象和数组的区别。
ES6引入了Map和Set数据结构。Map的键可以是任意类型且有序,与对象的字符串或符号键不同;Set存储唯一值,无重复。两者皆可迭代,支持for...of循环。Map有get、set、has、delete等方法,Set有add、delete、has方法。示例展示了Map和Set的基本操作。
11 3
|
7天前
|
JavaScript 前端开发 索引
JavaScript 数组中的增、删、改、查
JavaScript 数组中的增、删、改、查
|
21天前
|
JavaScript 前端开发
JavaScript数组的功能内置类型
数组是JavaScript的内置类型,JavaScript数组的功能特别强大。下面简单介绍一下JavaScript数组。
|
22天前
|
存储 JavaScript 前端开发
在浏览器中存储数组和对象(js的问题)
在浏览器中存储数组和对象(js的问题)
|
1月前
|
JavaScript 前端开发 数据格式
js数组常用的方法汇总
js数组常用的方法汇总
36 0
|
2月前
|
JavaScript 前端开发
JS将两个数组和合并成数组包对象格式的方法
JS将两个数组和合并成数组包对象格式的方法
28 0
|
3月前
|
JavaScript 前端开发
js中数组对象去重的方法
js中数组对象去重的方法
|
3月前
|
存储 JavaScript 前端开发
【面试题】JS的14种去重方法,看看你知道多少(包含数组对象去重)
【面试题】JS的14种去重方法,看看你知道多少(包含数组对象去重)