QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3821|回复: 1
打印 上一主题 下一主题

953. 验证外星语词典

[复制链接]
字体大小: 正常 放大
杨利霞        

5273

主题

82

听众

17万

积分

  • TA的每日心情
    开心
    2021-8-11 17:59
  • 签到天数: 17 天

    [LV.4]偶尔看看III

    网络挑战赛参赛者

    网络挑战赛参赛者

    自我介绍
    本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。

    群组2018美赛大象算法课程

    群组2018美赛护航培训课程

    群组2019年 数学中国站长建

    群组2019年数据分析师课程

    群组2018年大象老师国赛优

    跳转到指定楼层
    1#
    发表于 2019-4-19 21:45 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    953. 验证外星语词典
    - ?/ |/ c" e# X0 y

    7 \# F, n) v" g" b! u/ v  Z解题思路:根据题目要求,比较两个相邻字母是否按照order排序;创建(map)letter_orders,记录字典顺序;
    0 a7 R5 |- f8 w* h比较即可9 J6 L# C) ~* H  i

    5 @, I7 g2 I* F$ n) k1 B+ Cclass Solution {) C5 E) b, k1 d+ y" \
    public:
    ) I' @5 L6 M: K) Z$ `        bool isAlienSorted(vector<string>& words, string order)2 Y& h, N& T! g' j0 M$ C$ I
            {5 e& W+ u6 a+ f0 e! X
                    int min_letter_length = words[0].length();
    ! w" c7 {' q: t  C* q/ R5 b                map<char, int> letter_orders;: G) Z6 N, E% m1 H
                    letter_orders[' '] = 0;//空字符比其他字符都小记为0( H  p7 N' k# q" A" b
                    for (int i = 0; i < order.length(); i++)
    2 K# H+ w  F. [: }* v, h" `                {- F" j- u* a9 R
                            letter_orders[order] = i + 1;' p% |+ i9 k+ i
                    }; U* y  Z! x7 O; x( f6 k
                    for (int i = 0; i < words.size() - 1; i++)
    3 l- g# }* V6 g! O  \: e9 \                {% p* G- A+ q& Q+ m2 e% `  L8 Y, _
                            if (!check(words, words[i + 1], letter_orders))
    & e: u4 T. k5 d" K7 H: P8 T                                return false;, \6 T6 e0 m% Y4 w
                    }
    - C9 d5 F- I) u3 S" K                return true;
    7 Q. l/ B" G% V! M        }8 w4 V  H' C1 u8 q7 U3 [( `
            bool check(string a, string b, map<char, int>letter_orders)' A9 h1 D/ i# p& w6 m' y# m
            {" m. R! Y- e6 l" v  m( E( s
                    int sign = -1;
    . v9 z8 N" n$ z0 L. x$ q% Q  b7 d                for (int i = 0; i < a.length(); i++)( n& f5 E% a" z
                    {
    : v- U( P1 T% \+ t3 P! k# I                        if (letter_orders[a] < letter_orders[b])/ H; U- Q8 Y( n) X3 H; u
                            {# C2 m" k7 ^% _8 j/ C, }
                                    return true;
    , J& R% [) e3 o! {4 b                        }8 C6 ~# [: Y, a* z( e  w
                            else if (letter_orders[a] > letter_orders[b])
    3 n: Q  G. ]- A                        {5 c1 [) l' X/ h$ W: R
                                    return false;6 k. v1 X; P, o$ n! Y- k$ d. B% g
                            }
    6 _' v- E* X: S; n0 A+ _                }
    ' f2 D, k( w) A2 I+ V                return true;7 B, E/ g1 Y) A4 c2 G5 m
            }5 f$ h& h9 L+ e9 t8 B* f
    };/ N) s. f" D1 Z& n
    --------------------- # F0 F$ Q% @/ h0 Z

    " U# v- E+ m9 H- M) ?& U+ E* e+ }% \! _! l: u- C  J6 N* d( I9 Y

    2 J  F! ]! `9 [' p/ h. m8 @& i- h; C8 R& s: y7 y2 w: t
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信

    0

    主题

    3

    听众

    2

    积分

    升级  40%

    该用户从未签到

    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-4-17 13:45 , Processed in 0.383534 second(s), 61 queries .

    回顶部