当前位置: 首页 > news >正文

网络教育网站建设方案网络管理系统

网络教育网站建设方案,网络管理系统,平面网页设计,菏泽网站建设菏泽1. 题目 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 示例 1: 输入:digits “23” 输出&#…

1. 题目

给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。
给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。
在这里插入图片描述
示例 1:

输入:digits = “23”
输出:[“ad”,“ae”,“af”,“bd”,“be”,“bf”,“cd”,“ce”,“cf”]

示例2:

输入:digits = “”
输出:[]

示例 3:

输入:digits = “2”
输出:[“a”,“b”,“c”]

提示:

0 <= digits.length <= 4
digits[i] 是范围 [‘2’, ‘9’] 的一个数字。

2. 编程实现

2.1 思路

  1. 如果输入长度为0,直接返回,没有排列组合;
  2. 如果输入长度是1,那么直接就找对应按键上边的字母输出;
  3. 如果输入长度大于1,例如是2

两个数字的排列组合

可以定义一个map表,把字母与数组做一个关系对应
如:

typedef struct {int num;char character[5];
} map_t;map_t map[10] = {{0, {}},{1, {}},{3, {'a','b','c'}},{3, {'d','e','f'}},{3, {'g','h','i'}},{3, {'j','k','l'}},{3, {'m','n','o'}},{4, {'p','q','r','s'}},{3, {'t','u','v'}},{4, {'w','x','y','z'}},
}

2.2 编程实现

#include <stdio.h>
#include <stdlib.h>
#include <string.h>typedef struct {int num;char letters[5];
} map_t;map_t map[10] = {{0, {}},{1, {}},{2, {'a', 'b', 'c'}},{3, {'d', 'e', 'f'}},{4, {'g', 'h', 'i'}},{5, {'j', 'k', 'l'}},{6, {'m', 'n', 'o'}},{7, {'p', 'q', 'r', 's'}},{8, {'t', 'u', 'v'}},{9, {'w', 'x', 'y', 'z'}},
};void generateCombinations(char* digits, int index, char* current, char** result, int* count) {if (digits[index] == '\0') {current[index] = '\0';result[(*count)] = strdup(current);(*count)++;} else {int digit = digits[index] - '0';for (int i = 0; i < map[digit].num; i++) {current[index] = map[digit].letters[i];generateCombinations(digits, index + 1, current, result, count);}}
}char** letterCombinations(char* digits, int* returnSize) {int len = strlen(digits);char** result = (char**)malloc(sizeof(char*) * 10000);*returnSize = 0;if (len == 0) {return result;}char current[5] = {0};generateCombinations(digits, 0, current, result, returnSize);return result;
}int main() {char* digits = "23"; // 你可以修改这里的输入数字字符串int returnSize;char** result = letterCombinations(digits, &returnSize);for (int i = 0; i < returnSize; i++) {printf("%s\n", result[i]);free(result[i]);}free(result);return 0;
}
http://www.hkea.cn/news/906366/

相关文章:

  • 杭州营销网站建设东莞网站建设哪家公司好
  • 企业做营销型网站手机如何制作网页
  • 连云港网站关键词优化seo自学教程
  • 网站全站出售淘宝关键词排名怎么查询
  • 龙口市规划建设局网站查询收录
  • 学校网站建设注意什么东莞网站营销推广
  • 网站设计模板是什么百度网盘人工客服电话多少
  • wordpress文章收缩长春seo优化企业网络跃升
  • 网站地图调用希爱力双效片骗局
  • 珠海网站建设维护友情链接买卖代理
  • 武汉企业网站推广外包网络广告营销案例分析
  • 深圳哪里有做网站的汕头seo排名收费
  • 如何用腾讯云主机做网站株洲发布最新通告
  • 中国建设银行官网站下载信息流广告投放公司
  • 合肥建站平台网络平台推广是干什么
  • 黄冈工程建设标准造价信息网优化工作流程
  • 怎么做服装外贸网站怎么去推广一个产品
  • 和各大网站做视频的工作总结软件推广赚佣金渠道
  • asp.net是做网站的吗企业文化培训
  • 有链接的网站怎么做seochan是什么意思
  • 开发公司 工程管理中存在问题seo人工智能
  • 网站卖给别人后做违法信息seo和点击付费的区别
  • 网站配色 绿色网络推广主要做什么
  • 个人网站制作多少钱公关公司的主要业务
  • 网站底备案号链接代码西安网络推广营销公司
  • 哪个网站开发是按月付费的百度指数是免费的吗
  • asp网站后台管理教程放单平台
  • 做网站毕设任务书网络营销网站建设案例
  • .net 企业网站 模版关键词seo深圳
  • 网站建设优化价格网站seo诊断