953.Verifying an Alien Dictionary(Map)
In an alien language, surprisingly they also use english lowercase letters, but possibly in a different order. The order of the alphabet is some permutation of lowercase letters.
Given a sequence of words written in the alien language, and the order of the alphabet, return true if and only if the given words are sorted lexicographicaly in this alien language.
Example 1:
Input: words = ["hello","leetcode"], order = "hlabcdefgijkmnopqrstuvwxyz"
Output: true
Explanation: As 'h' comes before 'l' in this language, then the sequence is sorted.
使用Map将字典序映射为数字,进行比较
class Solution {
    public boolean compare(Map<Character,Integer> ch,String string1,String string2){
        int len1 = string1.length();
        int len2 = string2.length();
        int len = len1 < len2 ?len1:len2;
        for(int i =0;i<len;i++){
            if(ch.get(string1.charAt(i)) < ch.get(string2.charAt(i)))  return true;
            else if(ch.get(string1.charAt(i)) == ch.get(string2.charAt(i)))
                continue;
            else
                return false;
        }
        if(len1<=len2)   return true;
        else    return false;
    }
    public boolean isAlienSorted(String[] words, String order) {
        Map<Character,Integer> ch = new HashMap<Character,Integer>();
        for(int i =0;i<order.length();i++){
            ch.put(order.charAt(i),i);
        }
        for(int i=1;i<words.length;i++){
            if(!compare(ch,words[i-1],words[i])) return false;
        }
        return true;
    }
}
												
											953.Verifying an Alien Dictionary(Map)的更多相关文章
- 【Leetcode_easy】953. Verifying an Alien Dictionary
		
problem 953. Verifying an Alien Dictionary solution: class Solution { public: bool isAlienSorted(vec ...
 - LeetCode 953. Verifying an Alien Dictionary
		
原题链接在这里:https://leetcode.com/problems/verifying-an-alien-dictionary/ 题目: In an alien language, surpr ...
 - LeetCode 953 Verifying an Alien Dictionary 解题报告
		
题目要求 In an alien language, surprisingly they also use english lowercase letters, but possibly in a d ...
 - LeetCode 953. Verifying an Alien Dictionary (验证外星语词典)
		
题目标签:HashMap 题目给了我们一个 order 和 words array,让我们依照order 来判断 words array 是否排序. 利用hashmap 把order 存入 map, ...
 - 【leetcode】953. Verifying an Alien Dictionary
		
题目如下: In an alien language, surprisingly they also use english lowercase letters, but possibly in a ...
 - 【LeetCode】953. Verifying an Alien Dictionary 解题报告(Python)
		
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 日期 题目地址:https://leetcode.c ...
 - Verifying an Alien Dictionary
		
2019-11-24 22:11:30 953. Verifying an Alien Dictionary 问题描述: 问题求解: 这种问题有一种解法是建立新的排序和abc排序的映射,将这里的str ...
 - [Swift]LeetCode953. 验证外星语词典 | Verifying an Alien Dictionary
		
In an alien language, surprisingly they also use english lowercase letters, but possibly in a differ ...
 - LeetCode.953-验证外语字典顺序(Verifying an Alien Dictionary)
		
这是悦乐书的第364次更新,第392篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第226题(顺位题号是953).在外语中,令人惊讶的是,他们也使用英文小写字母,但可能使 ...
 
随机推荐
- kaldi通用底层矩阵运算库——CUDA
			
cudamatrix/cublas-wrappers.h 该头文件对cuBLAS的接口进行了简单的封装(函数名的简化和部分kaldi函数的封装). 比如 cublasSgemm_v2封装为cublas ...
 - Eclipse使用Git检出项目
			
1.打开Eclipse——File——Import...: 2.在弹出的Import框中选择Git——Projects from Git——NEXT: 3.选择Clone URI——Next: 4.输 ...
 - C# 解析torrent文件
			
基础知识: torrent文件信息存储格式: bencoding是一种以简洁格式指定和组织数据的方法.支持下列类型:字节串.整数.列表和字典. 1 字符串存储格式: <字符串的长度>:& ...
 - Mybatis操作oracle数据库的一些坑
			
oracle区分大小写,如果不想区分,必须要用引号包住 使用mybatis的generator生成的时候,建议使用全大写表,中间用下划线隔开,会生成驼峰字段 oracle没有空字符串的概念 写myba ...
 - 集成方法 Bagging原理
			
1.Bagging方法思路 Bagging独立的.并行的生成多个基本分类器,然后通过投票方式决定分类的类别 Bagging使用了自助法确定每个基本分类器的训练数据集,初始样本集中63.2%的数据会被采 ...
 - JSR-303 数据校验学习
			
一.JSR-303简介JSR-303 是 JAVA EE 6 中的一项子规范,叫做 Bean Validation,官方参考实现是Hibernate Validator. 此实现与 Hibernate ...
 - mysql性能优化分析 --- 下篇
			
概要回顾 之前看过<高性能mysql>对mysql数据库有了系统化的理解,虽然没能达到精通,但有了概念,遇到问题时会有逻辑条理的分析; 这回继上次sql分析结果的一个继续延伸分析,我拿了; ...
 - stat  文件三个时间点
			
Linux文件3个时间点(access time,modify time,change time) access time:表示最后一次访问(仅仅是访问,没有改动)文件的时间. 注意:至于为什么会出现 ...
 - 03中间件mycat对pxc集群的分片处理
			
安装第二个pxc集群 作为mycat的第二个分片 直接拷贝其中的一个虚拟机,然后还原到最初的状态,这样会小很多,启动改一下IP和基础配置,然后再次拷贝这个虚拟机两份改IP重启即可 正常安装pxc集群即 ...
 - memcached单机或热备的安装部署
			
一.部署准备 1.安装Java 不建议使用系统默认Open JDK版本,需要手工另行安装.JDK版本建议为1.7+,若Java已安装完毕,则无需重复安装. 安装过程如下: (1)获取JDK安装包: ( ...