博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
791. Custom Sort String - LeetCode
阅读量:6853 次
发布时间:2019-06-26

本文共 864 字,大约阅读时间需要 2 分钟。

  hot3.png

Question

Solution

题目大意:给你字符的顺序,让你排序另一个字符串。

思路:

输入参数如下:S = "cba"T = "abcd"先构造一个map,sMapkey存储S中出现的字符,value存储字符在S中的位置c -> 0b -> 1a -> 2再构造一个int数组,sIdxsIdx,存储S中的字符在T字符串中出现的次数遍历T字符串如果字符在sMap中,sIdx就加1如果不存在,就直接加入到返回字符串最后遍历sIdx数组,将S中的字符加入到返回字符串

Java实现:

public String customSortString(String S, String T) {    Map
sMap = new HashMap<>(); int[] sIdx = new int[S.length()]; for (int i = 0; i < S.length(); i++) { sMap.put(S.charAt(i), i); sIdx[i] = 0; } String retStr = ""; for (char c : T.toCharArray()) { if(sMap.containsKey(c)) { sIdx[sMap.get(c)] += 1; continue; }; retStr += String.valueOf(c); } for (int i = 0; i < S.length(); i++) { while (sIdx[i]-- > 0) { retStr += S.charAt(i); } } return retStr;}

转载于:https://my.oschina.net/yysue/blog/1933193

你可能感兴趣的文章
Spring boot 之 动态的获取不同的实现类
查看>>
为vue开发准备的一份es6语法笔记
查看>>
搭建LAMP平台
查看>>
用命令快速设置华为路由器
查看>>
我的友情链接
查看>>
LVS (Linux虚拟服务器)
查看>>
LVM
查看>>
命令-blkid
查看>>
登陆不了系统
查看>>
我的友情链接
查看>>
cisco基础学习小结
查看>>
开源软件授权协议浅谈
查看>>
Spring 多数据源动态切换
查看>>
jquery实现(多选框)全选和取消全选功能
查看>>
集合框架
查看>>
Android 组件系列-----Activity的传值和回传值
查看>>
利用原始套接字测量链路层交换机转发表容量
查看>>
SOLR企业搜索平台 三 (schema.xml配置和solrj的使用)
查看>>
数组添加新值,赋到原数组
查看>>
沃信科技ERP系统容灾方案的优势与服务
查看>>