Leetcode PHP题解--D62 976. Largest Perimeter Triangle

D62 976. Largest Perimeter Triangle 题目链接 976. Largest Perimeter Triangle 题目分析 给定数字数组,任取三条边形成三角形,返回最大边长。 思路 对给定的数组进行降序排序,使最大的数字在前面。 取最大的前三条,判断任两边之和是否大于第三边。 是则返回周长即可。 最终代码 ...

Leetcode基础刷题之PHP解析(5. Longest Palindromic Substring )

我们可以维护一个二维数组来表示一个区间内是否为回文串($[$i][$j]),当$i=$j的时候,说明此时只是一个字符串,那么肯定是回文串,如果$i-$j等于1说明此时他们是相邻的两个字符串,只需要判断$s[$i]是否等于$s[$j],如果相减大于等于2的话,说明他们之间不是相邻的,相当于此时$i位于当前字符串的最右侧,$j位于当前字符串的最左侧,我们除了判断他们自身是否相等之外,还需要判...

Leetcode PHP题解--D61 953. Verifying an Alien Dictionary

D61 953. Verifying an Alien Dictionary 题目链接 953. Verifying an Alien Dictionary 题目分析 给定一个单词数组和一个字符串,判断给定的数组是否满足给定字符串的顺序。 思路 按给定字符串,替换成正常顺序的单词。 再判断sort之前和之后的数组是否相同。 最终代码 ...

Leetcode PHP题解--D60 824. Goat Latin

D60 824. Goat Latin 题目链接 824. Goat Latin 题目分析 给定一个句子,由大小写英文字母组成,以空格为单词的分割。 按以下规则修改单词: 如果一个单词以元音开头(即AEIOU),那么在这个单词末尾添加ma; 如果不是以元音开头,那么将第一个字母移动到当前单词末尾,并在后面添加ma; 在所有单词末尾再额外添加n个a。n为当前单词在句子中的次序,从1开始。...

Leetcode PHP题解--D58 693. Binary Number with Alternating Bits

D58 693. Binary Number with Alternating Bits 题目链接 693. Binary Number with Alternating Bits 题目分析 给定一个数字,返回其二进制形式中,0和1是否交替出现。 思路 判断给定的数字是否为奇数。 若为奇数,那么最低位(即最右)会为1,那么会重复出现01串。 若为偶数,最低位为0,那么只能重复出现10串。...

Leetcode PHP题解--D57 762. Prime Number of Set Bits in Binary Representation

D57 762. Prime Number of Set Bits in Binary Representation 题目链接 762. Prime Number of Set Bits in Binary Representation 题目分析 对给定范围内的每个整数,返回其二进制形式下,数字1出现的次数为质数的次数。 例如11111,1出现了5次,5是质数。 再如10111,1出现了...