题解 | #字符串排序#
字符串排序
https://www.nowcoder.com/practice/5190a1db6f4f4ddb92fd9c365c944584
const rl = require("readline").createInterface({ input: process.stdin }); var iter = rl[Symbol.asyncIterator](); const readline = async () => (await iter.next()).value; void async function () { // Write your code here while(line = await readline()){ let arr=line.split('') let arr1=[] //取出字母 for(let i=0;i<arr.length;i++){ if(/[a-zA-Z]/.test(arr[i])){ arr1.push(arr[i]) arr[i]=undefined } } //sort是稳定排序 arr1.sort((a,b)=>{ if(a.toUpperCase()>b.toUpperCase())return 1 if(a.toUpperCase()<b.toUpperCase())return -1 else return 0 }) //把字母重新放回去 for(let i=0;i<arr.length;i++ ){ if(arr[i]===undefined){ arr[i]=arr1.shift() } } console.log(arr.join('')); } }()