Leetcode PHP题解--D81 520. Detect Capital

发布时间:2019-08-08 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了Leetcode PHP题解--D81 520. Detect Capital脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

D81 520. detect CapITal

题目链接

520. Detect Capital

题目分析

给定一个单词,判断其使用大写的方式正确与否。

思路

如果给定单词是全大写或全小写的话,属于正确用法。
用array_count_values的结果和包含全大写或全小写的数组计算差集,结果为空集则说明为全大写或全小写。直接返回true即可。

除了全大写和全小写的情况外,只能出现首字母大写,其余字母小写的情况。
故我们把第一个字符排除掉,再判断剩余字母是否为全小写。判断方法与前面相同。

最终代码

<?php
class Solution {

    /**
         * @param String $word
              * @return Boolean
                   */
                       function detectCapitalUse($word) {
                               $wordArray = str_split($word);
                                       $uppercase = str_split('abcDEFGHIJKLMNOPQRSTUVWXYZ');
                                               $lowercase = str_split('abcdefghijklmnopqrstuvwxyz');
                                                      
                                                              //all upper or lower case
                                                                      if(!array_diff_key(array_count_values($wordArray),array_flip($uppercase))
                                                                                 ||!array_diff_key(array_count_values($wordArray),array_flip($lowercase))){
                                                                                             return true;
                                                                                                     }
                                                                                                             //First letter whatever case,
                                                                                                                     //rest of the string must be all lowercase
                                                                                                                             array_shift($wordArray);
                                                                                                                                     if(!array_diff_key(array_count_values($wordArray),array_flip($lowercase))){
                                                                                                                                                return true; 
                                                                                                                                                        }
                                                                                                                                                                return false;
                                                                                                                                                                    }
                                                                                                                                                                    }
觉得文章对你有用,欢迎用[爱发](https://afdian.net/@skys215)资助。
                                                                                                                                                                
                                                                                                                                                                

脚本宝典总结

以上是脚本宝典为你收集整理的Leetcode PHP题解--D81 520. Detect Capital全部内容,希望文章能够帮你解决Leetcode PHP题解--D81 520. Detect Capital所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。