解题思路:
1,利用hash思想,遍历licensePlate,建立hash数组
2,依次遍历words中的每个单词,判断是否满足补全词
3,满足补全词则加入到定义的结构体中
4,对结构体中的len进行排序 取len最小的单词
代码简单易懂,如下
int LOWERWORd(int X) { if(X >= 'A' && X <= 'Z') X -= 'A'; else if(X >= 'a' && X <= 'z') X -= 'a'; return X; } struct wordmap { char *word; int len; }; int judge(int *oriHashArr,char *word) { int wordHashArr[26] = {0}; int i; for(i=0; i='a' && licensePlate[i]<='z' || licensePlate[i]>='A' && licensePlate[i]<='Z') { oriHashArr[LOWERWORd(licensePlate[i])]++; } } for(i=0; i 运行结果
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)