题解 | #字符串排序#

字符串排序

https://www.nowcoder.com/practice/5190a1db6f4f4ddb92fd9c365c944584

import { log } from "console";
import { on } from "events";
import { stdin, stdout } from "process";
import { createInterface } from "readline";

const readline = require("readline");

const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout,
});
rl.on("line", function (line) {
    solution(line);
});

function solution(line: string) {
    let pairs = line
        .split("")
        .map((x, index) => [x, index] as [string, number])
        .filter(([x, index]) => /[A-Za-z]/.test(x));
    let positions = pairs.map(([x, index]) => index);
    let chars = pairs.map(([x, index]) => x);
    chars.sort(
        (a, b) => a.toLowerCase().charCodeAt(0) - b.toLowerCase().charCodeAt(0)
    );
    let charArr = line.split("");
    for (let index = 0; index < chars.length; index++) {
        const element = chars[index];
        charArr[positions[index]] = element;
    }
    let res = charArr.join("");
    console.log(res);
}

全部评论

相关推荐

03-31 17:40
已编辑
门头沟学院 算法工程师
程序员牛肉:小牛肉来也! 也不要焦虑啦,你第一志愿还没有结束,只是回到人才库(泡大池子等待各个部门挑选)而已。仅仅代表你不符合这个组的用人标准,并不能够说明你在本次暑期实习中没机会加入美团了。 还是平复好心态,不断的复盘,等待下一次面试就好了。
点赞 评论 收藏
分享
04-11 21:31
四川大学 Java
野猪不是猪🐗:(ja)va学弟这招太狠了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务