首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
字符编码
[编程题]字符编码
热度指数:5427
时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 32M,其他语言64M
算法知识视频讲解
请设计一个算法,给一个字符串进行二进制编码,使得编码后字符串的长度最短。
数据范围:字符串长度满足
,本题有多组输入
输入描述:
每组数据一行,为待编码的字符串。保证字符串长度小于等于1000。
输出描述:
一行输出最短的编码后长度。
示例1
输入
MT-TECH-TEAM
输出
33
马上挑战
算法知识视频讲解
提交运行
算法知识视频讲解
添加笔记
求解答(54)
邀请回答
收藏(202)
分享
纠错
提交结果有问题?
57个回答
3篇题解
开通博客
bandiaoz
发表于 2024-12-28 22:30:54
解题思路 这是一道使用Huffman编码思想的问题,主要思路如下: 问题分析: 给定一个字符串,需要进行二进制编码 相同的字符必须使用相同的编码 要求编码后的总长度最短 解决方案: 统计每个字符的出现次数 使用优先队列(小顶堆)合并最小的两个长度 类似Huffman树的构建过程
展开全文
17c89
发表于 2024-01-28 17:09:20
import java.util.HashMap; import java.util.Map; import java.util.PriorityQueue; import java.util.Scanner; public class Main { public static void
展开全文
MichaelZhou_
发表于 2023-01-12 21:59:56
这道题算最短的编码,因此我们采用构造哈夫曼树。首先我们先解析出一行字符串里每个字符的出现次数,用std::map 进行保存。然后我们使用队列来构造哈夫曼树。 #include <algorithm> #include <cmath> #include <cstdint&
展开全文
问题信息
C++工程师
golang工程师
iOS工程师
安卓工程师
运维工程师
字符串
前端工程师
算法工程师
测试工程师
PHP工程师
c#工程师
2016
贪心
美团
测试开发工程师
大数据开发工程师
Java工程师
来自:
美团2016研发工程师...
难度:
57条回答
202收藏
26726浏览
热门推荐
通过挑战的用户
查看代码
陈joker
2022-09-14 00:16:57
刘黄乐
2022-09-10 14:55:50
牛客74411...
2022-09-09 21:17:23
牛客76266...
2022-09-07 15:16:49
牛客99302...
2022-09-05 19:06:53
相关试题
实现方法:print_rotate...
美团
数组
评论
(3)
下面使用贪心算法的是?
阿里巴巴
贪心
评论
(1)
软件测试是软件开发过程中的一个重要...
京东
2016
测试工程师
软件测试
评论
(5)
股票交易日
美团
动态规划
穷举
Java工程师
C++工程师
iOS工程师
安卓工程师
运维工程师
前端工程师
算法工程师
PHP工程师
2016
测试工程师
c#工程师
大数据开发工程师
golang工程师
测试开发工程师
评论
(116)
来自
美团2016研发工程师编...
奇数位丢弃
美团
数组
链表
模拟
Java工程师
C++工程师
iOS工程师
安卓工程师
运维工程师
前端工程师
算法工程师
PHP工程师
2016
测试工程师
c#工程师
大数据开发工程师
golang工程师
测试开发工程师
评论
(182)
来自
美团2016研发工程师编...
字符编码
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题
MT-TECH-TEAM
33