每日一题——LeetCode1309.解码字母到整数映射

发布时间:2024年01月23日

方法一 个人方法:
由题意可得:

1、1-26对应a-z,只不过从10开始,后面要加#才能表示字母

2、10# - 26#? 都是三位数,开头<=2,结尾都为#

3、某个数后面两位如果不为#那么该数为1-9对应a-i,如果后面两位为#则该数和后一位数字一起代表10-26,对应j-z

那么可以定义数组,数组从下标1开始到26对应元素为a-z

var freqAlphabets = function(s) {
    let char='0abcdefghijklmnopqrstuvwxyz',res='',i=0
    
    while(i<=s.length-1){
        let index=''
        if(s[i]<=2 && s[i+2]==='#'){
           index=s[i]+s[i+1]-''
            res+=char[index]
            i+=3
        }else{
            index=s[i]-''
            res+=char[index]
            i++
        }
    }
    return res
};

消耗时间和内存情况:

文章来源:https://blog.csdn.net/weixin_52878347/article/details/135795987
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。