如何使用 javascript 找到一组数字的最大排列值?
假设我们有一组数字:2, 8, 9, 35, 38, 86, 211, 380, 384, 3856。我们的目标是使用 javascript 代码找出这组数字所能组成的数字当中的最大值。
为了解决这个问题,我们需要采用以下步骤:
排列组合:我们首先需要排列并组合这些数字的所有可能顺序。排序:对所有排列组合进行排序,以找出最大的数字。
以下是javascript实现:
立即学习“Java免费学习笔记(深入)”;
// 排列组合function permutate(array, permutatedArray) { if (!permutatedArray) { permutatedArray = []; } if (array.length > 1) { let elementCur = array.shift(); permutate(array, permutatedArray); let permutatedArrayLen = permutatedArray.length; for (let j = 0; j < permutatedArrayLen; j++) { let p = permutatedArray.shift(); for (let i = 0; i <= p.length; i++) { let r = p.slice(0); // 复制排列好的数组 r.splice(i, 0, elementCur); // 插入数据到数组的位置 permutatedArray.push(r); } } } else { permutatedArray.push([array[0]]); } return permutatedArray;}// 排序function orderBy(arr) { let sort = []; permutate(arr, sort); let max = sort[0].join(''); // 获取第一个排列组合 for (let i = 0; i < sort.length; i++) { let item = sort[i].join(''); if (max < item) { max = item; } } return max;}let arr = [6, 68, 634, 6270];console.log(orderBy(arr)); //输出结果: 6866346270
登录后复制
以上就是如何使用 JavaScript 找出数字数组的最大排列值?的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2658003.html