
LeetCode:804. Unique Morse Code Words唯一摩尔斯密码词(C语言)
发布日期:2021-05-08 18:45:14
浏览次数:20
分类:精选文章
本文共 1719 字,大约阅读时间需要 5 分钟。
题目描述:
国际摩尔斯密码定义一种标准编码方式,将每个字母对应于一个由一系列点和短线组成的字符串, 比如: “a” 对应 “.-”, “b” 对应 “-…”, “c” 对应 “-.-.”, 等等。为了方便,所有26个英文字母对应摩尔斯密码表如下:
[".-","-…","-.-.","-…",".","…-.","–.","…","…",".—","-.-",".-…","–","-.","—",".–.","–.-",".-.","…","-","…-","…-",".–","-…-","-.–","–…"]
给定一个单词列表,每个单词可以写成每个字母对应摩尔斯密码的组合。例如,“cab” 可以写成 “-.-…–…”,(即 “-.-.” + “.-” + “-…” 字符串的结合)。我们将这样一个连接过程称作单词翻译。
返回我们可以获得所有词不同单词翻译的数量。
例如:
输入: words = [“gin”, “zen”, “gig”, “msg”] 输出: 2 解释: 各单词翻译如下: “gin” -> “–…-.” “zen” -> “–…-.” “gig” -> “–…--.” “msg” -> “–…--.”共有 2 种不同翻译, “–…-.” 和 “–…--.”.
注意:
单词列表words 的长度不会超过 100。每个单词 words[i]的长度范围为 [1, 12]。每个单词 words[i]只包含小写字母。
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/unique-morse-code-words 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 解答:int uniqueMorseRepresentations(char ** words, int wordsSize){ int i = 0; int j = 0; int n = 0; int k = 0; int count = 0; char tmp[100][100] = { 0}; char result[120][100] = { 0}; int flag = 0; char res[26][10] = { ".-","-...","-.-.","-..",".","..-.","--.","....","..",".---","-.-",".-..","--","-.","---",".--.","--.-",".-.","...","-","..-","...-",".--","-..-","-.--","--.."}; for(i = 0; i < wordsSize;i++){ j = 0; flag = 0; while(words[i][j] != '\0'){ n = words[i][j] - 'a'; strcat(tmp[i], res[n]); //每一行拼接到tmp[i]中 j++; } for(k = 0; k < count; k++) { if(0 == strcmp(result[k], tmp[i])){ //若摩尔斯密码存在则退出 flag = 1; break; } } if (0 == flag){ strcpy(result[count], tmp[i]); //若摩尔斯密码不存在则保存至result count++; } } return count;}
运行结果:

发表评论
最新留言
不错!
[***.144.177.141]2025年03月24日 08时34分25秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
8 个警示和学习的 5 个阶段
2021-05-09
c# 图片带水纹波动
2021-05-09
H5 贪吃蛇源码
2021-05-09
从零开始学安全(十六)● Linux vim命令
2021-05-09
从零开始学安全(三十四)●百度杯 ctf比赛 九月场 sqli
2021-05-09
3389连接痕迹清除
2021-05-09
发生系统错误 6118
2021-05-09
阿里巴巴Json工具-Fastjson教程
2021-05-09
Spring Cloud Gateway - 快速开始
2021-05-09
Spring Security 实战干货:理解AuthenticationManager
2021-05-09
Java对象转JSON时如何动态的增删改查属性
2021-05-09
Python 面向对象进阶
2021-05-09
Linux常用统计命令之wc
2021-05-09
Git安装及使用以及连接GitHub方法详解
2021-05-09
docker容器与虚拟机的区别
2021-05-09
shell脚本里使用echo输出颜色
2021-05-09
Python2跟Python3的区别
2021-05-09
并发编程——IO模型详解
2021-05-09
Java之封装,继承,多态
2021-05-09
wait()与notify()
2021-05-09