博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Anagrams
阅读量:5372 次
发布时间:2019-06-15

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

Given an array of strings, return all groups of strings that are anagrams.

Note: All inputs will be in lower-case.

思路:回文构词法是由颠倒字母顺序而来的单词。主要的特点就是字母个数和种类都一样,只是改变了其顺序。使用map<string,int> amp来保存一个字符串及其出现的位置。首先,从strs第一个字符串开始遍历,使用一变量s来保存,并对其进行排序;2)在amp中查找s,如果没有找到,则记录amp记录s在strs中的位置下标,如果存在,则将第一次出现的字符串保存入result中去,即result.push_back(strs(amp[s]),并且将amp[s]=-1——防止重复查找,然后再将该strs中的字符串保存入result中

class Solution {public:    vector
anagrams(vector
&strs) { vector
result; if(strs.size()<=1) return result; map
amp; map
::iterator it; for(int i=0;i
=0) { result.push_back(strs[amp[s]]); amp[s]=-1; } result.push_back(strs[i]); } } return result; }};

 

转载于:https://www.cnblogs.com/awy-blog/p/3722736.html

你可能感兴趣的文章
奇葩问题:spring+mybaits项目突然出现其中一些Mapper类找不到
查看>>
linux命令sync,shutdown
查看>>
./configure详解
查看>>
Java图书推荐:《深入理解Java7:核心技术与最佳实践》
查看>>
Java 基本数据类型 sizeof 功能
查看>>
深入浅出zeptojs中tap事件
查看>>
在mac下搭建Apacheserver
查看>>
xpath笔记
查看>>
WCF入门(八)——异常处理2
查看>>
位运算&,逻辑与and
查看>>
Date/Math/String对象的函数
查看>>
指针与数组
查看>>
Markdown总结
查看>>
【Beta版本】冲刺-Day2
查看>>
debug?用对拍!
查看>>
全球(全国)土地利用数据集大全
查看>>
用于考核、评价的投票打分系统解决方式
查看>>
Ps切图学习
查看>>
前端不要性无能
查看>>
转 字符串处理函数(不使用库函数实现)
查看>>