- 在线时间
- 1630 小时
- 最后登录
- 2024-1-29
- 注册时间
- 2017-5-16
- 听众数
- 82
- 收听数
- 1
- 能力
- 120 分
- 体力
- 566801 点
- 威望
- 12 点
- 阅读权限
- 255
- 积分
- 175263
- 相册
- 1
- 日志
- 0
- 记录
- 0
- 帖子
- 5313
- 主题
- 5273
- 精华
- 3
- 分享
- 0
- 好友
- 163
TA的每日心情 | 开心 2021-8-11 17:59 |
|---|
签到天数: 17 天 [LV.4]偶尔看看III 网络挑战赛参赛者 网络挑战赛参赛者 - 自我介绍
- 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
 群组: 2018美赛大象算法课程 群组: 2018美赛护航培训课程 群组: 2019年 数学中国站长建 群组: 2019年数据分析师课程 群组: 2018年大象老师国赛优 |
|
953. 验证外星语词典
/ o# ^3 n: U' N% M( P9 d0 \: E! H( n U4 m. U
解题思路:根据题目要求,比较两个相邻字母是否按照order排序;创建(map)letter_orders,记录字典顺序;4 ~/ M! S4 Z, M* O7 L
比较即可
% H) ^7 x7 A3 Z2 A. C2 v1 i! c7 F& q6 P
& c% P6 M1 y+ l9 p/ A$ {class Solution {# x4 P: [, C# P0 g+ r6 b$ W4 h* w& ~
public:
: O R5 R7 J1 \5 ]" T: W bool isAlienSorted(vector<string>& words, string order)
g4 V4 }( n1 X/ P' ?; A {" f. a' [ {& J' j. v! v% g
int min_letter_length = words[0].length();
8 p( E& _' |" R# q8 A map<char, int> letter_orders;/ m& a. E+ S$ l: T
letter_orders[' '] = 0;//空字符比其他字符都小记为0
2 ^" J: h8 D. E2 R# t for (int i = 0; i < order.length(); i++)
6 y% S# ]4 ^0 a" r" ~' W7 s v {7 L0 m9 \/ |2 f/ w2 l6 `; Q" h3 t
letter_orders[order] = i + 1;
7 Z% ^+ K/ h( z- j/ m6 S/ J2 J }( X9 z" @0 b7 @- ]+ X$ n
for (int i = 0; i < words.size() - 1; i++)
7 U7 W. U0 E9 h7 c6 n! m2 } {
6 a- b2 f% {- B: w% _% ` if (!check(words, words[i + 1], letter_orders))
% t$ r- E$ y g4 Z- _1 A* d return false;
! }# ^2 {/ M3 v- w3 m }
- [' v/ P; A3 \. [8 I6 H3 p8 \3 Z/ w return true;
2 C# H6 _/ |: ~- `' }5 G$ Q1 F; Y }# ~: ]% e3 t" O% G5 e4 B: t
bool check(string a, string b, map<char, int>letter_orders)& j, G7 L6 i2 l9 m
{6 f; M0 }* M* U& L2 N$ n
int sign = -1;9 z7 w0 L' C2 _# I6 ?. p
for (int i = 0; i < a.length(); i++)1 Z- Q8 M" h7 ~, W) s$ ?' }: _
{- P( G4 i1 @, Z$ F8 X+ K
if (letter_orders[a] < letter_orders[b])& p1 S& R2 N$ f+ G1 k5 D
{' [: X v8 j- j# Y3 a" t
return true;6 _% y, V4 X5 |! q( u! P
}
, N9 Q1 c/ v/ n2 c else if (letter_orders[a] > letter_orders[b])* p8 C- H1 B# ?* y0 h: M. D9 ^
{
. Y! F1 t' E/ t; R return false;
" [6 U9 j" a0 }; _/ ] }
}! T3 J9 b( ]/ r! } }! i7 Y( n6 R7 g% K1 d+ N
return true;
4 L8 e5 `& v) \8 @ }
. U5 _' G ~' Q- `& ^};
) l, x9 L: I8 w3 l/ J! n---------------------
, Y+ y$ s2 q; E2 Y f& a
/ m, `% t% G* d+ J$ M( J
. j/ {0 H% a9 N- d5 U/ v2 m; M% F: q$ }' n: \9 ?7 |
6 K7 H v, m, b) v& q, n |
zan
|