码迷,mamicode.com
首页 > 其他好文 > 详细

确定两串乱序同构

时间:2016-09-30 18:04:16      阅读:116      评论:0      收藏:0      [点我收藏+]

标签:

来源:http://www.nowcoder.com/questionTerminal/164929d4acd04de5b0ee2d93047b3b20

题目描述
给定两个字符串,请编写程序,确定其中一个字符串的字符重新排列后,
能否变成另一个字符串。这里规定大小写为不同字符,且考虑字符串重点空格
给定一个string stringA和一个string stringB,请返回一个bool,代表两串是
否重新排列后可相同。保证两串的长度都小于等于5000。
测试样例:
"This is nowcoder","is This nowcoder"
返回:true
"Here you are","Are you here"
返回:false

思路说明:

这个题目描述里面“且考虑字符串重点空格”的意义描述不是很明确。

根据牛客网网友讨论和实际提交代码检测结果,感觉不像是要比较单词,而是直接比较字符。

毕竟是要把一个字符串strA调整字符顺序使得该字符串变得与字符串strB相等,所以关键不在于字符的顺序,而是字符出现的次数。

也就是说:假如strA与strB里面各个字符出现的次数对应相等,那么一定可以将strA变为strB。

所以统计strA中各个字符出现的次数并记录在countA[256]中,

然后统计strB各字符出现次数并记录在countB[256]中,

接着扫描countA[]和countB[],若是countA[i]==countB[i],i∈[0,255],则返回true,否则返回false。

 

确定两串乱序同构

标签:

原文地址:http://www.cnblogs.com/huashanqingzhu/p/5924340.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!