题解 | #字符串合并处理#

字符串合并处理

https://www.nowcoder.com/practice/d3d8e23870584782b3dd48f26cb39c8f

前面排序占了挺大篇幅的 如果各位有更好的方法 欢迎评论留言 完整代码如下: 
const readline = require("readline");
const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout,
});
rl.on("line", function (line) {
    let arr = line.replace(' ', '').split('');
    let m = arr.length;
    let arr1 = []; arr2 = [];//用arr1和arr2存储偶数和奇数字符
    while (arr.length > 0) {
        arr1.push(arr.shift());
        arr2.push(arr.shift());
    }
    arr1.sort();
    arr2 = arr2.filter(Boolean).sort();//排序
    while (arr.length < m) {//用排序后的arr1和arr2重新组成字符串
        arr.push(arr1.shift());
        arr.push(arr2.shift());
    }
    arr = arr.filter(Boolean);//注意需要过滤掉空值
    let res = arr.map(x => //利用map()方法完成规定的字符转换
        x = parseInt(x, 16)
        ? parseInt(parseInt(x, 16).toString(2).padStart(4, '0').split('').reverse().join(''), 2).toString(16).toUpperCase()
        : x
    ).join('');
    console.log(res);
});


全部评论

相关推荐

2025-12-14 11:43
黑龙江大学 Java
用微笑面对困难:确实比较烂,可以这么修改:加上大学的qs排名,然后大学简介要写一些,然后硕士大学加大加粗,科研经历第一句话都写上在复旦大学时,主要负责xxxx,简历左上角把学校logo写上,建议用复旦大学的简历模板
点赞 评论 收藏
分享
2025-12-19 21:53
门头沟学院 Java
想做OpenGL:不要一来就把自己定位这么低吧,把大厂当成目标,不断去学技术做项目,最后你至少能学到能找到中小厂的技术水平,你一上来就找这种两千块还要前后端都会的,其实对你用处不会很大,真去了也是打杂
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务