1. 题目
    一组单词words,根据给定字母表order次序判断单词是否按照字典序排列

  2. 思路
    2.1 依次判断相邻单词。
    (1) 后一个单词的第i个字母在前->不按字典序排列
    (2)前一个单词的第i个字母在前->结束这两个单词的比较
    (3)注意两单词长度不等的情况,注意一个单词是另一个单词前驱的情况(app和apple)
    2.2 将单词数字化然后用is_sorted比较
    首先将字典数字化,然后用字典将每个单词变成数字组合[出处]

  3. 代码
    (1)第一种思路

    bool isAlienSorted(vector<string>& words, string order) {for(int j=0; j<words.size()-1; j++) {   // 遍历单词int flag = 0;   // 两单词前半截相同(一长一短)for(int i=0;;i++) { //根据字母比较两单词if(words[j].size()-1<i || words[j+1].size()-1<i) break;int a=order.find(words[j][i]), b=order.find(words[j+1][i]);if(a < b) {flag = 0;break;}else if(a>b) return false;else flag=1;}if(flag && words[j].size() > words[j+1].size())        // "apple"(后) 和 "app"(前)return false;}return true;}

(2)第二种思路

    bool isAlienSorted(vector<string>& words, const string& order) {int tmp[26];for (size_t i = 0; i < 26; tmp[order[i++] - 'a'] = i);for (auto& word : words)for (auto& ch : word)ch = tmp[ch - 'a'];return is_sorted(words.cbegin(), words.cend());}

953-验证外星语词典相关推荐

  1. 953. 验证外星语词典( 简单模拟 + 自定义定制排序 )

    文章目录 Question Ideas 1.Answer( Java ) - 自定义定制排序 Code 2.Answer( Java ) - 简单模拟 Code Question 953. 验证外星语 ...

  2. 题目:953.验证外星语词典

    ​ ​题目来源: leetcode题目,网址:953. 验证外星语词典 - 力扣(LeetCode) 解题思路: 遍历字符串,以连续两个为一组判断其是否符合外星语词典的字典序. 可以使用 int 数组 ...

  3. LeetCode 812. 最大三角形面积(再次用到凸包的Andrew算法) / 面试题 04.06. 后继者 / 953. 验证外星语词典

    812. 最大三角形面积 2022.5.15 每日一题 题目描述 给定包含多个点的集合,从其中取三个点组成三角形,返回能组成的最大三角形的面积. 示例: 输入: points = [[0,0],[0, ...

  4. 953. 验证外星语词典

    力扣打卡:953. 验证外星语词典 解题思路 思路 使用HashMap统计字典的顺序 从头开始,每次只比较两个字符串 循环比较,最后得到结果 解释 每次比较两个字符串,只有两种情况 从头开始比较字符 ...

  5. 力扣953. 验证外星语词典

    力扣953. 验证外星语词典 某种外星语也使用英文小写字母,但可能顺序 order 不同.字母表的顺序(order)是一些小写字母的排列. 给定一组用外星语书写的单词 words,以及其字母表的顺序 ...

  6. LeetCode 953. 验证外星语词典

    验证外星语词典 某种外星语也使用英文小写字母,但可能顺序 order (order.length==26)(order.length == 26)(order.length==26)不同.字母表的顺序 ...

  7. leetcode 953.验证外星语词典(js)

    题目 某种外星语也使用英文小写字母,但可能顺序 order 不同.字母表的顺序(order)是一些小写字母的排列. 给定一组用外星语书写的单词 words,以及其字母表的顺序 order,只有当给定的 ...

  8. leetcode 953. 验证外星语词典 做题笔记

    题目: 某种外星语也使用英文小写字母,但可能顺序 order 不同.字母表的顺序(order)是一些小写字母的排列. 给定一组用外星语书写的单词 words,以及其字母表的顺序 order,只有当给定 ...

  9. 953.验证外星语词典

    题目描述 某种外星语也使用英文小写字母,但可能顺序 order 不同.字母表的顺序(order)是一些小写字母的排列. 给定一组用外星语书写的单词 words,以及其字母表的顺序 order,只有当给 ...

  10. LeetCode每日一题——953. 验证外星语词典

    文章目录 题目 示例 思路 代码 题目 某种外星语也使用英文小写字母,但可能顺序 order 不同.字母表的顺序(order)是一些小写字母的排列. 给定一组用外星语书写的单词 words,以及其字母 ...

最新文章

  1. Java 数值大小比较
  2. linux 查看线程详细信息,Linux 下查看线程信息
  3. 如何解决ajax重复提交的问题
  4. Alpha冲刺总结随笔
  5. android r 新建分区_Android实现从下往上弹出视差效果(Activity)
  6. 小脚紧腿裤配什么衣服好?
  7. [双指针|模拟] leetcode 15 三数之和
  8. cmake笔记(1)
  9. L3-011 直捣黄龙 (30 分)-PAT 团体程序设计天梯赛 GPLT
  10. Java Swing的进化
  11. 2020年12月编程语言排行榜
  12. 在浏览器输入URL,按下回车之后的流程?
  13. 插件化Amigo-1
  14. openCV+VS2010结合+正确运行图片
  15. 如何将小鹤单字挂接到搜狗输入法
  16. 爬取天气时常用的城市代码(备忘)
  17. Vue.js实战第十章笔记
  18. 电脑打不开浏览器--解决方法
  19. 电影《翻滚吧阿信》中的管理知识
  20. Java——serialize与deserialize

热门文章

  1. 程序员架构修炼之道:如何设计“易理解”的系统架构?
  2. 思科将威胁网格集成到Meraki MX平台 应对未知威胁并联动应急响应
  3. 使用zbar进行二维码或条形码(一维码)扫描
  4. python学习日记3月18
  5. 新能源电动汽车一键启动手机操控智能钥匙
  6. 事态升级管理程序范本_事态升级管理规定
  7. 【cocos creater】7.仿《弓箭传说》- 控制主角朝向敌人
  8. web开发过程中跨域访问的问题
  9. syscall:getsockopt(..) failed:Connection refused
  10. 使用 GLSL 运行网络(GLSL卷积)