953-验证外星语词典
题目
一组单词words,根据给定字母表order次序判断单词是否按照字典序排列思路
2.1 依次判断相邻单词。
(1) 后一个单词的第i个字母在前->不按字典序排列
(2)前一个单词的第i个字母在前->结束这两个单词的比较
(3)注意两单词长度不等的情况,注意一个单词是另一个单词前驱的情况(app和apple)
2.2 将单词数字化然后用is_sorted比较
首先将字典数字化,然后用字典将每个单词变成数字组合[出处]代码
(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-验证外星语词典相关推荐
- 953. 验证外星语词典( 简单模拟 + 自定义定制排序 )
文章目录 Question Ideas 1.Answer( Java ) - 自定义定制排序 Code 2.Answer( Java ) - 简单模拟 Code Question 953. 验证外星语 ...
- 题目:953.验证外星语词典
题目来源: leetcode题目,网址:953. 验证外星语词典 - 力扣(LeetCode) 解题思路: 遍历字符串,以连续两个为一组判断其是否符合外星语词典的字典序. 可以使用 int 数组 ...
- LeetCode 812. 最大三角形面积(再次用到凸包的Andrew算法) / 面试题 04.06. 后继者 / 953. 验证外星语词典
812. 最大三角形面积 2022.5.15 每日一题 题目描述 给定包含多个点的集合,从其中取三个点组成三角形,返回能组成的最大三角形的面积. 示例: 输入: points = [[0,0],[0, ...
- 953. 验证外星语词典
力扣打卡:953. 验证外星语词典 解题思路 思路 使用HashMap统计字典的顺序 从头开始,每次只比较两个字符串 循环比较,最后得到结果 解释 每次比较两个字符串,只有两种情况 从头开始比较字符 ...
- 力扣953. 验证外星语词典
力扣953. 验证外星语词典 某种外星语也使用英文小写字母,但可能顺序 order 不同.字母表的顺序(order)是一些小写字母的排列. 给定一组用外星语书写的单词 words,以及其字母表的顺序 ...
- LeetCode 953. 验证外星语词典
验证外星语词典 某种外星语也使用英文小写字母,但可能顺序 order (order.length==26)(order.length == 26)(order.length==26)不同.字母表的顺序 ...
- leetcode 953.验证外星语词典(js)
题目 某种外星语也使用英文小写字母,但可能顺序 order 不同.字母表的顺序(order)是一些小写字母的排列. 给定一组用外星语书写的单词 words,以及其字母表的顺序 order,只有当给定的 ...
- leetcode 953. 验证外星语词典 做题笔记
题目: 某种外星语也使用英文小写字母,但可能顺序 order 不同.字母表的顺序(order)是一些小写字母的排列. 给定一组用外星语书写的单词 words,以及其字母表的顺序 order,只有当给定 ...
- 953.验证外星语词典
题目描述 某种外星语也使用英文小写字母,但可能顺序 order 不同.字母表的顺序(order)是一些小写字母的排列. 给定一组用外星语书写的单词 words,以及其字母表的顺序 order,只有当给 ...
- LeetCode每日一题——953. 验证外星语词典
文章目录 题目 示例 思路 代码 题目 某种外星语也使用英文小写字母,但可能顺序 order 不同.字母表的顺序(order)是一些小写字母的排列. 给定一组用外星语书写的单词 words,以及其字母 ...
最新文章
- Java 数值大小比较
- linux 查看线程详细信息,Linux 下查看线程信息
- 如何解决ajax重复提交的问题
- Alpha冲刺总结随笔
- android r 新建分区_Android实现从下往上弹出视差效果(Activity)
- 小脚紧腿裤配什么衣服好?
- [双指针|模拟] leetcode 15 三数之和
- cmake笔记(1)
- L3-011 直捣黄龙 (30 分)-PAT 团体程序设计天梯赛 GPLT
- Java Swing的进化
- 2020年12月编程语言排行榜
- 在浏览器输入URL,按下回车之后的流程?
- 插件化Amigo-1
- openCV+VS2010结合+正确运行图片
- 如何将小鹤单字挂接到搜狗输入法
- 爬取天气时常用的城市代码(备忘)
- Vue.js实战第十章笔记
- 电脑打不开浏览器--解决方法
- 电影《翻滚吧阿信》中的管理知识
- Java——serialize与deserialize
热门文章
- 程序员架构修炼之道:如何设计“易理解”的系统架构?
- 思科将威胁网格集成到Meraki MX平台 应对未知威胁并联动应急响应
- 使用zbar进行二维码或条形码(一维码)扫描
- python学习日记3月18
- 新能源电动汽车一键启动手机操控智能钥匙
- 事态升级管理程序范本_事态升级管理规定
- 【cocos creater】7.仿《弓箭传说》- 控制主角朝向敌人
- web开发过程中跨域访问的问题
- syscall:getsockopt(..) failed:Connection refused
- 使用 GLSL 运行网络(GLSL卷积)