判断变位词

题目1:输入字符串s1,s2,判断是否为变位词。

解1:O(n^2)的遍历,不用额外空间。

解2:假设输入全为ASII字符,那么用256空间统计s1的字符出现,再到s2中匹配,如果最终256的数组全0,为变位 词。

解3:每个字符赋一个数字(质数?),s1所有数字乘起来,s2全乘起来的值-==s1的值,那么是变位词,空间为常量

时间O(n)。

解法三让我想起了一则趣事,有个家伙遇到一个题目判断一个字符串是否为另一个的子串,很多人都看过了吧,也是用数字代表字符,最后乘起来判断,简洁!

猜你喜欢

转载自paramore.iteye.com/blog/1474396
今日推荐