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

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

#!/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...
    肇东周阅读 8,736评论 4 47
  • 谈谈魅族手机输入法 前面的话 这篇文章是前些日子写的,之前写得相对比较散乱。今天,重新把它梳理了一下,文章在逻辑上...
    小宁OPEN阅读 7,188评论 1 3
  • 慢慢岁月,我以过了15在载,现在是一名高二的学生,我感觉每天的我都在按部就班,起床,上学,吃饭,回家。父母为了我更...
    长春花儿阅读 150评论 0 0
  • 版权归作者所有,任何形式转载请联系作者。 作者:花哈哈hhh 老师让交家长身份证复印件,我把二姐夫的身份证复印件给...
    陈小花fa阅读 106评论 0 15
  • 天空没有阴霾 阳光认真工作 这世界突然安详 除了我 刚刚丢弃了鲜花 雪不会再下 冰也融化 这空气一直温馨 除了你 ...
    宅东东阅读 188评论 1 2
  • 关于食物: 从小很喜欢吃的一种膨化食品叫浪味仙,波浪形状的薯卷,咬起来“嘎吱嘎吱”很脆。小时候零食并不像现在这样...
    青筝訫阅读 959评论 0 0