当前位置: 首页 > news >正文

[LeetCode]—Anagrams 回文构词法

Anagrams

 

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

Note: All inputs will be in lower-case.

分析:

         回文构词法:两个字符串字符种类和各字符数相同,这两个字符串就是Anagrams。

         需要分析每个字符串的模式,但是直接将字符串排序,就可以达到区分的目的。用hash map 将分析后的字符串作为key值存入,相同模式的原串存入vector中。


class Solution {
public:
    vector<string> anagrams(vector<string> &strs) {
         unordered_map<string,vector<string> > groups;
         
         vector<string>::iterator iter;
         for(iter=strs.begin();iter!=strs.end();iter++){
            string s(*iter);
            sort(s.begin(),s.end());
            
            groups[s].push_back(*iter);
         }

         vector<string> res;
         unordered_map<string,vector<string> >::iterator iter1;
         for(iter1=groups.begin();iter1!=groups.end();iter1++){
                if(iter1->second.size()>1)
                    res.insert(res.end(),iter1->second.begin(),iter1->second.end());
         }
         return res;

    }
};


相关文章:

  • 一个简单的读写文件程序-适用于MTK平台资源管理
  • [LeetCode]—Simplify Path 简化路径表达式
  • 如何编写跨平台应用程序
  • Gartner:2009~2010年值得关注的8大移动技术
  • 金玉良言十六句
  • 将 Flex 集成到 Java EE 应用程序的最佳实践
  • Java软件工程师几个面试问题
  • 互联网创业几个思路
  • Asp.net 中文件以Binary 形式数据库的保存和读取
  • [LeetCode]—Permutations 求全排列
  • [LeetCode]—Permutations II 求全排列(有重复值)
  • 动态装卸DLL示例-匪徒和
  • 一个困扰我一个多星期的Nebula3的BUG
  • [Python]—Linux Server 系统监控程序
  • .NET 4.0中使用内存映射文件实现进程通讯
  • (三)从jvm层面了解线程的启动和停止
  • 〔开发系列〕一次关于小程序开发的深度总结
  • Android系统模拟器绘制实现概述
  • Angular js 常用指令ng-if、ng-class、ng-option、ng-value、ng-click是如何使用的?
  • CentOS6 编译安装 redis-3.2.3
  • IIS 10 PHP CGI 设置 PHP_INI_SCAN_DIR
  • TypeScript实现数据结构(一)栈,队列,链表
  • vue 配置sass、scss全局变量
  • Vue.js 移动端适配之 vw 解决方案
  • windows下如何用phpstorm同步测试服务器
  • WinRAR存在严重的安全漏洞影响5亿用户
  • 后端_ThinkPHP5
  • 理清楚Vue的结构
  • 如何合理的规划jvm性能调优
  • 什么是Javascript函数节流?
  • 视频flv转mp4最快的几种方法(就是不用格式工厂)
  • 手机app有了短信验证码还有没必要有图片验证码?
  • 一、python与pycharm的安装
  • #宝哥教你#查看jquery绑定的事件函数
  • #单片机(TB6600驱动42步进电机)
  • (07)Hive——窗口函数详解
  • (2020)Java后端开发----(面试题和笔试题)
  • (done) 两个矩阵 “相似” 是什么意思?
  • (Matalb时序预测)PSO-BP粒子群算法优化BP神经网络的多维时序回归预测
  • (Redis使用系列) Springboot 使用redis的List数据结构实现简单的排队功能场景 九
  • (附源码)node.js知识分享网站 毕业设计 202038
  • (附源码)计算机毕业设计ssm电影分享网站
  • (黑马出品_高级篇_01)SpringCloud+RabbitMQ+Docker+Redis+搜索+分布式
  • (利用IDEA+Maven)定制属于自己的jar包
  • (切换多语言)vantUI+vue-i18n进行国际化配置及新增没有的语言包
  • (循环依赖问题)学习spring的第九天
  • (转)Java socket中关闭IO流后,发生什么事?(以关闭输出流为例) .
  • *上位机的定义
  • .bat批处理(八):各种形式的变量%0、%i、%%i、var、%var%、!var!的含义和区别
  • .Net Web窗口页属性
  • .NET 发展历程
  • .NET 回调、接口回调、 委托
  • .NET 使用配置文件
  • .NETCORE 开发登录接口MFA谷歌多因子身份验证
  • .NET教程 - 字符串 编码 正则表达式(String Encoding Regular Express)