美文网首页
17.电话中的数字字母转换

17.电话中的数字字母转换

作者: New_Learner | 来源:发表于2019-05-09 09:56 被阅读0次

给定包含2-9的数字字符串,利用电话来转换成可能对应的字符串。

思路1:建立2-9的转换表。利用查询的操作分别转换。但是这对于n个数字而言复杂度至少也是3^n,指数级的复杂度是无法接受的。

思路2:利用递归的思路。这里其实很难设计,主要是由于向量操作中,既要改变原先的值,又要增加内容。为了避免该情况,对递归的设计应当只在停止时才输出向量,这样递归函数的返回值就必须得是void ,向量要利用形参的引用来传递。所以递归函数的形参应当有1.字符串,2.为了确定递归内容的指向现在字符的指针,3.上次递归的结果,4.输出向量。实际上这也是一个复杂度较高的算法,因为这是一个带有循环的递归,每趟递归至少会指向三次获以上的下层。并不能改善复杂度。

本题的复杂度是显然存在下界的,3^n的下界无法突破。从逻辑思考上也可以推出,输出的个数至少3^n个。

相关文章

  • 17.电话中的数字字母转换

    给定包含2-9的数字字符串,利用电话来转换成可能对应的字符串。 思路1:建立2-9的转换表。利用查询的操作分别转换...

  • LeetCode-17. 电话号码的字母组合

    17. 电话号码的字母组合 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。 给出数字到字母的映...

  • LeetCode每日一题: 17. 电话号码的字母组合

    17. 电话号码的字母组合 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。给出数字到字母的映射...

  • 17. 电话号码的字母组合

    17.电话号码的字母组合 给定一个仅包含数字2-9的字符串,返回所有它能表示的字母组合。 给出数字到字母的映射如下...

  • LeetCode-17.电话号码的字母组合

    力扣17.电话号码的字母组合 给定一个仅包含数字2-9的字符串,返回所有它能表示的字母组合。 给出数字到字母的映射...

  • LeetCodeDay50 —— 电话号码的字母组合★★

    17. 电话号码的字母组合 描述 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。 给出数字到字...

  • 17. 电话号码的字母组合

    题目 17. 电话号码的字母组合 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。 给出数字到字...

  • leetcode上树形问题 java

    leetcode17号问题17. 电话号码的字母组合 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母...

  • Linux cat

    字母数字转换

  • 电话号码的字母组合

    17. 电话号码的字母组合 题目:给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任...

网友评论

      本文标题:17.电话中的数字字母转换

      本文链接:https://www.haomeiwen.com/subject/hbdioqtx.html