Leetcode基础刷题之PHP解析(146. LRU Cache)

实现一个LRU缓存淘汰机制,支持get和put两个操作。什么是LRU缓存淘汰,简单的说遵循最近最少使用的原则。就像是你搬家,东西不能全部带去,那么最后你肯定会把最少使用,最近最少使用的丢下。如果是最新使用过的东西,那么他肯定会入你法眼,在挑选的时候也会优先选择。ps:我搬家从来都只需要一步Maxc即可。...

Leetcode基础刷题之PHP解析(135. Candy)

一个经典的发🍬问题,一排小朋友,每一个小朋友都有一个权重值,你需要给这些小孩发糖果,首先至少每一个小孩都会分到一个糖果,并且权重大的小朋友糖果会多余相邻小朋友拥有的糖果(也就是至少多一个),求最少需要几个糖果。...

Leetcode基础刷题之PHP解析(134. Gas Station)

一个环形路上有n个加油站,gas[i]表示每个加油站上你能加的油,cost[i]表示你从i站到i+1站所需要的油,让我们求是否存在从一个起点出发,能返回到原点加油站的开始起点站,注意想要走完一圈加油站,那么前提条件是gas整体肯定要大于cost。...

Leetcode基础刷题之PHP解析(130. Surrounded Regions)

这道题很有意思。给定一个2D?我把它理解成二维数组只包含X和O的二维数组,把所有被包围的O全转换成X,下面有说明,如果O是存在在边界上的,那么不需要转换,也就是矩阵的四条边的位置是不需要转换的。...

Leetcode基础刷题之PHP解析(128. Longest Consecutive Sequence)

其实这道题还是好理解的,如果是空直接返回0,否则可以先给数组排序,这样的话只需要遍历整个有序的数组,如果当前数和上一个数值一样的,不需要增加他的最长的长度,啥都不用处理,否则的话,只有两种情况,要么当前比上一个大1,要么不是,如果当前是等于上一个数+1,我们就更新当前最长的序列长度,否则的话我们就更新全局最长的长度,然后把当前最长的长度序列重新赋值。...