Cracking The Coding Interview 1.4

来源:互联网 发布:单片机和pc通信 编辑:程序博客网 时间:2024/05/16 16:59
//Write a method to decide if two strings are anagrams or not.////变位词(anagrams)指的是组成两个单词的字符相同,但位置不同的单词。比如说, abbcd和abcdb就是一对变位词。//  //  使用一个固定数组大小记录各个字符出现的次数,同1.1#include <iostream>using namespace std;bool isAnagrams(const char *a, const char *b){int asize = strlen(a);int bsize = strlen(b);if (asize != bsize){return false;}int isAna[26] = {0};for (int i =0; i <asize; i++){int t = a[i] - 'a';isAna[t]++;t =  b[i] - 'a';isAna[t]--;}bool isA = true;for ( int j=0; j <26; j++){if (isAna[j]!=0){isA = false;}}return isA;}int main(){char *s1 = "fuckyou";char *s2 = "youfuck";cout<<isAnagrams(s1,s2);return 0;}

0 0