算法---九宫格键盘输入

模拟实现手机的九宫格输入

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
__title__ = ''
__author__ = 'thinkreed'
__mtime__ = '2017/3/18'

"""


class Solution(object):
    def letterCombinations(self, digits):
        """
        :type digits: str
        :rtype: List[str]
        """

        if not digits:
            return []

        p_number_dict = {
            '2': 'abc',
            '3': 'def',
            '4': 'ghi',
            '5': 'jkl',
            '6': 'mno',
            '7': 'pqrs',
            '8': 'tuv',
            '9': 'wxyz'}

        results = ['']

        #循环处理每一个digit
        for _, digit in enumerate(digits):
            tmp = []
            #遍历每一个digit代表的字母
            for _, c in enumerate(p_number_dict[digit]):
                #累加至已有结果
                for _, result in enumerate(results):
                    tmp.append(result + c)

            results = tmp

        return results


if __name__ == '__main__':
    print(Solution().letterCombinations("23"))
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,262评论 4 61
  • 谈谈魅族手机输入法 前面的话 这篇文章是前些日子写的,之前写得相对比较散乱。今天,重新把它梳理了一下,文章在逻辑上...
    Kenny做产品阅读 8,603评论 1 3
  • 慢慢岁月,我以过了15在载,现在是一名高二的学生,我感觉每天的我都在按部就班,起床,上学,吃饭,回家。父母为了我更...
    长春花儿阅读 275评论 0 0
  • 版权归作者所有,任何形式转载请联系作者。 作者:花哈哈hhh 老师让交家长身份证复印件,我把二姐夫的身份证复印件给...
    陈小花fa阅读 219评论 0 15
  • 天空没有阴霾 阳光认真工作 这世界突然安详 除了我 刚刚丢弃了鲜花 雪不会再下 冰也融化 这空气一直温馨 除了你 ...
    宅东东阅读 362评论 1 2