每日一题——LeetCode1417.重新格式化字符串

每日一题——LeetCode1417.重新格式化字符串_第1张图片

方法一 个人方法:

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;inumStr.length?resStr+=charStr[charStr.length-1]:resStr+=numStr[numStr.length-1]
};

 消耗时间和内存情况:

每日一题——LeetCode1417.重新格式化字符串_第2张图片

你可能感兴趣的:(每日一题,javascript,leetcode,算法)