LeetCode 791. 自定义字符串排序(map)

1. 题目

字符串S和 T 只包含小写字符。在S中,所有字符只会出现一次。

S 已经根据某种规则进行了排序。我们要根据S中的字符顺序对T进行排序。更具体地说,如果S中x在y之前出现,那么返回的字符串中x也应出现在y之前。

返回任意一种符合条件的字符串T。

示例:
输入:
S = "cba"
T = "abcd"
输出: "cbad"
解释: 
S中出现了字符 "a", "b", "c", 所以 "a", "b", "c" 的顺序应该是 "c", "b", "a". 
由于 "d" 没有在S中出现, 它可以放在T的任意位置. "dcba", "cdba", "cbda" 都是合法的输出。注意:
S的最大长度为26,其中没有重复的字符。
T的最大长度为200。
S和T只包含小写字符。

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/custom-sort-string
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. 解题

  • 用map记录S字符出现的次序
  • 再对T的字符进行计数
  • 按照map的次序输出字符,最后追加没出现的字符
class Solution {
public:string customSortString(string S, string T) {map<int,char> m;//S中的字符的出现次序--对应字符int i;for(i = 0; i < S.size(); ++i)m[i] = S[i];int count[26] = {0};for(i = 0; i < T.size(); ++i)count[T[i]-'a']++;//字符个数计数string ans;for(auto& mi : m)//默认按key升序{ans += string(count[mi.second-'a'], mi.second);count[mi.second-'a'] = 0;}for(i = 0; i < 26; ++i)if(count[i] != 0)//剩余不在S中的字符ans += string(count[i], 'a'+i);return ans;}
};

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/477885.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

6万字解决算法面试中的深度学习基础问题

文 | 清卢雨源 | 对白的算法屋前言真的是千呼万唤始出来emmmm&#xff0c;去年春招结束写了篇面试的经验分享。在文中提到和小伙伴整理了算法岗面试时遇到的常见知识点及回答&#xff0c;本想着授人以渔&#xff0c;但没想到大家都看上了我家的 &#xff01;但因本人执行力不足…

OpenKG开源系列 | 海洋鱼类百科知识图谱(浙江大学)

OpenKG地址&#xff1a;http://openkg.cn/dataset/ocean开放许可协议&#xff1a;CC BY-SA 4.0贡献者&#xff1a;浙江大学&#xff08;徐雅静、邓鸿杰、唐坤、郑国轴&#xff09;1、背景海洋是生命的摇篮,是人类文明的重要发祥地,在人类社会发展的进程中起着举足轻重的作用。海…

Presto实现原理和美团的使用实践

Facebook的数据仓库存储在少量大型Hadoop/HDFS集群。Hive是Facebook在几年前专为Hadoop打造的一款数据仓库工具。在以前&#xff0c;Facebook的科学家和分析师一直依靠Hive来做数据分析。但Hive使用MapReduce作为底层计算框架&#xff0c;是专为批处理设计的。但随着数据越来越…

图谱实战 | 徐美兰:深度应用驱动的医学知识图谱构建

转载公众号 | DataFunSummit分享嘉宾&#xff1a;徐美兰 浙江数字医疗卫生技术研究院 数字医学知识中心主任编辑整理&#xff1a;李杰 京东出品平台&#xff1a;DataFunTalk导读&#xff1a;数研院这些年在知识图谱建设上取得了丰硕成果&#xff0c;今天我们将图谱构建过程中的…

6 年大厂面试官,谈谈我对算法岗面试的一些看法

文 | 不敢透露姓名的 Severus 和小轶面试官坐在那撇着大嘴的&#xff0c;“咳&#xff0c;给你一机会&#xff0c;最短的时间内让我记住你。”这个我会&#xff0c;我抡圆了“啪&#xff01;”&#xff0c;扭头我就走。我刚到家&#xff0c;录取通知书就来了&#xff0c;请你务…

美团Android自动化之旅—生成渠道包

每当发新版本时&#xff0c;美团团购Android客户端会被分发到各个应用市场&#xff0c;比如豌豆荚&#xff0c;360手机助手等。为了统计这些市场的效果&#xff08;活跃数&#xff0c;下单数等&#xff09;&#xff0c;需要有一种方法来唯一标识它们。 团购客户端目前通过渠道号…

开源开放 | 细粒度可循证医学文档知识融合表示和推理(CCKS2021)

OpenKG地址&#xff1a;http://openkg.cn/dataset/mdo-dataset开放许可协议&#xff1a;GPL 3.0贡献者&#xff1a;武汉科技大学&#xff08;高峰、龚珊珊、顾进广、徐芳芳&#xff09;摘要本开放资源在医学文档知识的基础上&#xff0c;使用知识图谱相关技术&#xff0c;解决了…

图灵奖大佬 Lecun 发表对比学习新作,比 SimCLR 更好用!

文 | Rukawa_Y编 | 智商掉了一地&#xff0c;Sheryc_王苏比 SimCLR 更好用的 Self-Supervised Learning&#xff0c;一起来看看吧&#xff01;Self-Supervised Learning作为深度学习中的独孤九剑&#xff0c;当融汇贯通灵活应用之后&#xff0c;也能打败声名在外的武当太极剑。…

5whys分析法在美团工程师中的实践

前言 网站的质量和稳定性对于用户和公司来说至关重要&#xff0c;但是在网站的快速发展过程中&#xff0c;由于各种原因导致事故不可避免的发生&#xff0c;这些大大小小的事故对公司难免会造成一些负面的影响&#xff0c;为了避免同类事故的再次发生&#xff0c;美团的工程师们…

LeetCode 382. 链表随机节点(概率)

1. 题目 给定一个单链表&#xff0c;随机选择链表的一个节点&#xff0c;并返回相应的节点值。保证每个节点被选的概率一样。 进阶: 如果链表十分大且长度未知&#xff0c;如何解决这个问题&#xff1f;你能否使用常数级空间复杂度实现&#xff1f; 来源&#xff1a;力扣&am…

图谱实战 | 斯坦福黄柯鑫:图机器学习在生物图上的应用

转载公众号 | DataFunSummit分享嘉宾&#xff1a;黄柯鑫 斯坦福大学 博士生编辑整理&#xff1a;元玉蒲 西北大学出品平台&#xff1a;DataFunTalk导读&#xff1a;大家好&#xff0c;我叫黄柯鑫。我现在是斯坦福大学的计算机科学博士第一年级&#xff0c;研究方向是机器学习在…

排得更好VS估得更准VS搜的更全「推荐、广告、搜索」算法间到底有什么区别?...

文 | 王喆源 | 王喆的机器学习笔记作为互联网的核心应用“搜广推”&#xff0c;三个方向基本都是互联网公司的标配。各头部公司的搜广推系统也都各自发展成了集成了多种模型、算法、策略的庞然大物&#xff0c;想一口气讲清楚三者的区别并不容易。不过万事总有一个头绪&#xf…

Solr Facet技术的应用与研究

问题背景 在《搜索引擎关键字智能提示的一种实现》一文中介绍过&#xff0c;美团的CRM系统负责管理销售人员的门店(POI)和项目(DEAL)信息&#xff0c;提供统一的检索功能&#xff0c;其索引层采用的是SolrCloud。在用户搜索时&#xff0c;如果能直观地给出每个品类的POI数目&am…

LeetCode 129. 求根到叶子节点数字之和(DFS)

1. 题目 给定一个二叉树&#xff0c;它的每个结点都存放一个 0-9 的数字&#xff0c;每条从根到叶子节点的路径都代表一个数字。 例如&#xff0c;从根到叶子节点路径 1->2->3 代表数字 123。 计算从根到叶子节点生成的所有数字之和。 说明: 叶子节点是指没有子节点的…

推荐精排之锋:FM的一小步,泛化的一大步

文 | 水哥源 | 知乎1.如果说LR是复读机&#xff0c;那么FM可以算作是电子词典2.泛化就是我没见过你&#xff0c;我也能懂你&#xff0c;但是泛化有时候和个性化有点矛盾&#xff0c;属于此消彼长的关系3.实践中的泛化往往来源于拆解&#xff0c;没见过组成的产品&#xff0c;但…

图谱实战 | 阿里周晓欢:如何将实体抽取从生成问题变成匹配问题?

转载公众号 | DataFunSummit分享嘉宾&#xff1a;周晓欢 阿里巴巴 算法专家编辑整理&#xff1a;刘香妍 中南财经政法大学出品平台&#xff1a;DataFunSummit导读&#xff1a;实体抽取或者说命名实体识别 ( NER ) 在信息抽取中扮演着重要角色&#xff0c;常见的实体抽取多是对文…

剖析 Promise 之基础篇

随着浏览器端异步操作复杂程度的日益增加&#xff0c;以及以 Evented I/O 为核心思想的 NodeJS 的持续火爆&#xff0c;Promise、Async 等异步操作封装由于解决了异步编程上面临的诸多挑战&#xff0c;得到了越来越广泛的应用。本文旨在剖析 Promise 的内部机制&#xff0c;从实…

LeetCode 318. 最大单词长度乘积(位运算)

1. 题目 给定一个字符串数组 words&#xff0c;找到 length(word[i]) * length(word[j]) 的最大值&#xff0c;并且这两个单词不含有公共字母。你可以认为每个单词只包含小写字母。如果不存在这样的两个单词&#xff0c;返回 0。 示例 1: 输入: ["abcw","baz&…

百度研究院商业智能实验室招聘研究实习生!

致力于连接最靠谱的算法岗与最强的求职者招聘贴投放请联系微信xixiaoyao-1岗位职责&#xff1a;同实验室的数据科学家和工程师一起参与研发前沿的机器学习技术&#xff0c;主要内容为对前沿技术进行调研&#xff0c;复现前沿科研成果在顶级会议和期刊上发表论文支持及落地百度飞…

论文浅尝 | KGNLI: 知识图谱增强的自然语言推理模型

笔记整理 | 韩振峰&#xff0c;天津大学硕士链接&#xff1a;https://aclanthology.org/2020.coling-main.571.pdf动机自然语言推理 (NLI) 是自然语言处理中的一项重要任务&#xff0c;它旨在识别两个句子之间的逻辑关系。现有的大多数方法都是基于训练语料库来获得语义知识从而…