- 在线时间
- 1630 小时
- 最后登录
- 2024-1-29
- 注册时间
- 2017-5-16
- 听众数
- 82
- 收听数
- 1
- 能力
- 120 分
- 体力
- 566895 点
- 威望
- 12 点
- 阅读权限
- 255
- 积分
- 175291
- 相册
- 1
- 日志
- 0
- 记录
- 0
- 帖子
- 5313
- 主题
- 5273
- 精华
- 3
- 分享
- 0
- 好友
- 163
TA的每日心情 | 开心 2021-8-11 17:59 |
|---|
签到天数: 17 天 [LV.4]偶尔看看III 网络挑战赛参赛者 网络挑战赛参赛者 - 自我介绍
- 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
 群组: 2018美赛大象算法课程 群组: 2018美赛护航培训课程 群组: 2019年 数学中国站长建 群组: 2019年数据分析师课程 群组: 2018年大象老师国赛优 |
|
953. 验证外星语词典 J$ z' q( J! K- D0 k8 g( o+ E
5 I, n- W7 \5 t% b- e
解题思路:根据题目要求,比较两个相邻字母是否按照order排序;创建(map)letter_orders,记录字典顺序;) Z* V# G( T1 C" B1 h( Q% I
比较即可# U* g' b; K# {' F" g4 |
2 l: F* v2 O5 E7 y; H: |8 S; `class Solution {4 [1 t9 i8 S5 L1 q# o! |
public:
0 H+ Y0 }& r* X8 q6 u bool isAlienSorted(vector<string>& words, string order)- H! o0 V9 N8 \) s- N1 D2 x
{
[% ^0 ^ @: n* K% E& n; Y& @2 P int min_letter_length = words[0].length();
. f1 z4 i( w* F. z `; S map<char, int> letter_orders;: n' T! l; z2 Q
letter_orders[' '] = 0;//空字符比其他字符都小记为0" T0 f2 o6 y: |7 H
for (int i = 0; i < order.length(); i++)
$ z# f+ _( G0 l/ V {
' K o$ D: w( ]5 Q5 n7 L letter_orders[order] = i + 1;5 @' B1 _, c+ F+ G$ R6 H8 s2 o
}( _: N5 r4 S$ s: w5 ^
for (int i = 0; i < words.size() - 1; i++)! h( V4 x* |, [! h- ?
{
8 E/ k9 ^, @/ L8 m' A5 b& i/ r if (!check(words, words[i + 1], letter_orders))
0 y5 |2 F3 R V( O; R" e return false;
. @$ M/ ~! m4 W }% N( E9 a" ~( v5 \2 B/ ^
return true;3 e |' o& ^1 C0 m8 s
}+ z4 ?! F5 o5 G' E9 U& ~+ R; U+ R
bool check(string a, string b, map<char, int>letter_orders)
2 M5 m. v5 V9 k4 c {% A& p }# R! ~9 b& ^4 g3 x! k' z I
int sign = -1;
3 ^/ I ~3 W b2 D! @; @. l+ { for (int i = 0; i < a.length(); i++)9 _: ?4 n/ n8 `! k( h
{
- F8 _" A8 M! i- d if (letter_orders[a] < letter_orders[b])& k6 t4 Z' z0 M* A/ s4 \. k$ P8 U9 U6 [
{ F/ J1 K! A" j7 h8 B+ E# b
return true;: p3 k( v9 C! p9 D
}8 O5 U) z' r2 e: b# A
else if (letter_orders[a] > letter_orders[b]) _7 t7 O( \4 n2 ~
{
/ ]1 L. b2 n: m return false;
5 G4 Q0 i5 C3 ]: n2 l }
2 g% i {) I/ X7 y }
3 s2 _# M" F1 w% j6 F; I$ |/ e* ] return true;* T' E4 Z+ c" f" O. D A) O: w
}, p, h. a" H* t
};% O) Y5 t1 {1 A# c, }, d
--------------------- . m/ }# x+ L U% C
3 p' }9 A1 r8 g. e i$ b+ x+ v& N( S# e( a/ F8 {
' N( Y0 L) c8 B6 M
* Y3 L' f" b: p! A8 a1 e7 ` |
zan
|