方法一 个人方法:
s里的字符只有小写字母和数字两种情况,我们可以把s里的字母和数字分隔成两个字符串,
比较两个字符串的长度,只有当两个字符串的长度差值的绝对值为1或0才能满足题意。
长度更长的要放在结果字符串的第一位,然后交替拼接。
var reformat = function(s) {let charStr='',numStr='',resStr=''for(let char of s){if(char>='a'&&char<='z'){charStr+=char}else{numStr+=char}}if(Math.abs(charStr.length-numStr.length)>1) return ""let minLen=Math.min(charStr.length,numStr.length)for(let i=0;i<minLen;i++){if(minLen===charStr.length){resStr+=numStr[i]resStr+=charStr[i]}else{resStr+=charStr[i]resStr+=numStr[i]} }if(charStr.length===numStr.length) return resStrelse return charStr.length>numStr.length?resStr+=charStr[charStr.length-1]:resStr+=numStr[numStr.length-1]
};
消耗时间和内存情况: