alpha 的博客

何晓东 的博客 | alpha blog

PHP 滑动窗口算法实现计算最长无重复子串

PHP 滑动窗口算法实现计算最长无重复子串

无重复字符的最长子串 这是 LeetCode 第三题,题干如下: 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。 示例 1:   输入: “abcabcbb”   输出: 3   解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。 示例 2:   输入: “bbbbb”   输出: 1   解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1...

PHP 滑动窗口算法实现找出所有字母异位词

PHP 滑动窗口算法实现找出所有字母异位词

找到字符串中所有字母异位词 给定一个字符串 s 和一个非空字符串 p,找到 s 中所有是 p 的字母异位词的子串,返回这些子串的起始索引。 字符串只包含小写英文字母,并且字符串 s 和 p 的长度都不超过 20100。 说明: 字母异位词指字母相同,但排列不同的字符串。 不考虑答案输出的顺序。 示例 1: 输入: s: "cbaebabacd" p: "abc" 输出: [0, 6]...

PHP 滑动窗口算法实现计算最小覆盖子串

PHP 滑动窗口算法实现计算最小覆盖子串

最小覆盖子串 给你一个字符串 S、一个字符串 T,请在字符串 S 里面找出:包含 T 所有字符的最小子串。 示例: 输入: S = "ADOBECODEBANC", T = "ABC" 输出: "BANC" 说明: 如果 S 中不存这样的子串,则返回空字符串 ““。 如果 S 中存在这样的子串,我们保证它是唯一的答案。 来源:力扣(LeetCode) 链接:https:/...

PHP 基础二分查找代码实现

PHP 基础二分查找代码实现

基础的二分查找就是:在一组有序的集合中,查找指定值,稍微延伸一下就是指定值在集合中多次出现,需要查询第一次出现的位置或者最后一次出现的位置。这种分三种情况讨论。二分查找的维基百科定义:搜索过程从数组的中间元素开始,如果中间元素正好是要查找的元素,则搜索过程结束;如果某一特定元素大于或者小于中间元素,则在数组大于或小于中间元素的那一半中查找,而且跟开始一样从中间元素开始比较。如果在某一步...

Laravel 几种少用的排序方式代码

Laravel 几种少用的排序方式代码

代码未考虑性能问题,在大表排序情况下,建议考虑多种实现方式,对比性能 按中文拼音排序 重点是转换成 gbk 格式就可以排序,原因即是 GBK 特性 orderByRaw('CONVERT (name USING gbk)'); 按距离当前日期的差距排序 DATEDIFF 函数可以计算当前日期和数据日期的差距,但是会出现负数的情况,所以需要用 CAST(xx AS UNSIGNE...

PHP 计算种花问题

PHP 计算种花问题

计算种花问题 假设你有一个很长的花坛,一部分地块种植了花,另一部分却没有。可是,花卉不能种植在相邻的地块上,它们会争夺水源,两者都会死去。 给定一个花坛(表示为一个数组包含 0 和 1,其中 0 表示没种植花,1 表示种植了花),和一个数 n 。能否在不打破种植规则的情况下种入 n 朵花?能则返回 True,不能则返回 False。 示例 1: 输入: flowerbed = [1,0,...

PHP 计算至少是其他数字两倍的最大数

PHP 计算至少是其他数字两倍的最大数

计算Excel表列名称 给定一个正整数,返回它在 Excel 表中相对应的列名称。 例如: 1 -> A 2 -> B 3 -> C ... 26 -> Z 27 -> AA 28 -> AB ... 示例 1: 输入: 1 输出: "A" 示例 2: 输入: 28 输出: "AB...

PHP 计算至少是其他数字两倍的最大数

PHP 计算至少是其他数字两倍的最大数

计算至少是其他数字两倍的最大数 在一个给定的数组 nums 中,总是存在一个最大元素 。 查找数组中的最大元素是否至少是数组中每个其他数字的两倍。 如果是,则返回最大元素的索引,否则返回-1。 示例 1: 输入: nums = [3, 6, 1, 0] 输出: 1 解释: 6是最大的整数, 对于数组中的其他整数, 6大于数组中其他元素的两倍。6的索引是1, 所以我们返回1. 示例 ...

PHP 实现计算强整数

PHP 实现计算强整数

强整数 给定两个正整数 x 和 y,如果某一整数等于 x^i + y^j,其中整数 i >= 0 且 j >= 0,那么我们认为该整数是一个强整数。 返回值小于或等于 bound 的所有强整数组成的列表。 你可以按任何顺序返回答案。在你的回答中,每个值最多出现一次。 示例 1: 输入:x = 2, y = 3, bound = 10 输出:[2,3,4,5,7,9,10] ...

PHP 实现判断完美数

PHP 实现判断完美数

完美数 对于一个 正整数,如果它和除了它自身以外的所有正因子之和相等,我们称它为“完美数”。 给定一个 整数 n, 如果他是完美数,返回 True,否则返回 False   示例: 输入: 28 输出: True 解释: 28 = 1 + 2 + 4 + 7 + 14 提示: 输入的数字 n 不会超过 100,000,000. (1e8) 来源:力扣(LeetCode) 链接:...