Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Leetcode PHP题解--D81 520. Detect Capital

Leetcode PHP题解--D81 520. Detect Capital

步履不停
步履不停asal
2019-06-10 09:38:562005semak imbas

未标题-15.png

D81 520. Detect Capital

题目链接

520. Detect Capital

题目分析

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

思路

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

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

最终代码

<?php
class Solution {    /**
     * @param String $word
     * @return Boolean
     */
    function detectCapitalUse($word) {
        $wordArray = str_split($word);
        $uppercase = str_split(&#39;ABCDEFGHIJKLMNOPQRSTUVWXYZ&#39;);
        $lowercase = str_split(&#39;abcdefghijklmnopqrstuvwxyz&#39;);       
        //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;
    }
}

Atas ialah kandungan terperinci Leetcode PHP题解--D81 520. Detect Capital. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Artikel berkaitan

Lihat lagi