leetcode-482. 密钥格式化

leetcode

题目

482. 密钥格式化

解法

用了很多 php 的函数,但是思想就是几个步骤

  • 将源字符串的 - 去掉
  • 从后往前遍历字符串,每 $k 个字符一组,拼接上 - 字符
class Solution {
/**
* @param String $s
* @param Integer $k
* @return String
*/
function licenseKeyFormatting($s, $k) {
$s = str_replace('-', '', $s);
$s = strrev($s);
$arrStr = str_split($s, $k);
foreach ($arrStr as &$item) {
$item = strtoupper(strrev($item));
}
$arrStr = array_reverse($arrStr);
return implode('-', $arrStr);
}
}

一次遍历的方式:

class Solution {
/**
* @param String $s
* @param Integer $k
* @return String
*/
function licenseKeyFormatting($s, $k) {
$len = strlen($s);
$curLen = 0;
$ret = '';
for ($i = $len - 1; $i >= 0; $i--) {
if ($s[$i] == '-') {
continue;
}
if ($curLen != 0 && $curLen % $k == 0) {
$ret = '-' . $ret;
}
$ret = strtoupper($s[$i]) . $ret;
$curLen++;
}
return $ret;
}

使用 php 自带函数的性能比较高

image

posted @   吴丹阳-V  阅读(39)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示