Leetcode PHP题解--D54 937. Reorder Log Files
D54 937. Reorder Log Files
题目链接
937. Reorder Log Files
题目分析
给定一个数组,每一个元素是一条“日志”。
每一条日志的第一个部分为一个标识符(ID)。
剩余部分为:
全为小写字母的字符串(称为字符日志)
或
全为数字的字符串(称为数字日志)。
给定的数组中确定会至少有一个字母。
重新排序这个数组,使得字符日志在前、数字日志在后。
并将字符日志按字母升序排序,数字日志按保持原来的顺序(即,出现的顺序)。
返回排序后的数组。
思路
针对每一条日志:
首先,需要拆分ID和日志部分。
判断是字符日志还是数字日志,存入相应数组中。
遍历完成后,对字符日志进行排序。
在其后拼接数字日志数组,并返回即可。
最终代码
<?php
class Solution {/*** @param String[] $logs* @return String[]*/function reorderLogFiles($logs) {$letters = [];$digits = [];foreach($logs as $log){$values = explode(' ',$log);$id = array_shift($values);$firstLetter = ord($values[0][0]) - ord('0');if($firstLetter>=0 && $firstLetter<=9){$digits[] = $log;}else{$letters[implode(' ',$values)] = $log;}}ksort($letters);return $letters+$digits;}
}
复制代码
若觉得本文章对你有用,欢迎用爱发电资助。
Leetcode PHP题解--D54 937. Reorder Log Files相关推荐
- LeetCode:937. Reorder Log Files
051401 题目 You have an array of logs. Each log is a space delimited string of words. For each log, th ...
- 【leetcode】937. Reorder Log Files
题目如下: You have an array of logs. Each log is a space delimited string of words. For each log, the f ...
- CCAH-CCA-500-4题:Where are Hadoop task log files stored?
4.Where are Hadoop task log files stored? For each YARN job, the Hadoop framework generates task log ...
- MongoDB 日志切换(Rotate Log Files)实战
MongoDB 日志切换(Rotate Log Files)实战 1. 在mongo shell下,执行logRotate命令: use admin db.runCommand({logRotate: ...
- MongoDB日志切换(Rotate Log Files)指南
MongoDB日志切换(Rotate Log Files)指南 MongoDB默认情况下不会自动的切换轮转日志的,这将会导致日志日渐增大,在繁忙的业务下,日志增长量非常大的.如此之大的日志文件,查看某 ...
- oracle修改redolog路径,oracle修改redo log files路径
如果可以关闭数据库,可以采用下述步骤.如果不能关闭数据库,只能采用新建redo log files的方式来实现修改该redo 的路径了. 一.shutdown the database 二.拷贝red ...
- oracle修改redo路径,oracle修改redo log files路径
如果可以关闭数据库,可以采用下述步骤.如果不能关闭数据库,只能采用新建redo log files的方式来实现修改该redo 的路径了. 一.shutdown the database 二.拷贝red ...
- LeetCode/LintCode 题解丨一周爆刷字符串:URL 编码
描述 给出一个代表网址 host 的字符串 base_url,和代表查询参数的列表 query_params_list,你需要返回带查询参数的完整 URL. 查询参数列表由一些包含两个元素的数组组成, ...
- LeetCode/LintCode 题解丨一周爆刷双指针:最小范围
描述 有k个升序排列的数组,寻找一个最小范围,使每个数组中至少有一个元素被包含. 范围[a,b]比范围[c,d]小,当且仅当b-a < d-c,或是a < c且b-a == d-c. 给定 ...
最新文章
- 记录一次自己调试代码的过程
- mysql错误:this authentication plugin is not supported
- 跨链(8)Cosmos之“跨链交互协议IBC”
- 【Java】Float计算不准确
- linux 离线安装nfs,ubuntu 上离线安装包制作与安装之NFS搭建
- php的全局p变量程序_php全局变量的使用
- 大话设计模式C++版——代理模式
- 高效的JavaScript
- TOGAF9.2企业架构师考试小记
- .NET简谈分层架构思想(彻底分离每个层)
- 各国区号json整理
- 王者荣耀李白王昭君情侣头像故事: “风雨如晦,鸡鸣不已。既见君子,云胡不喜。”...
- python访问纯真IP数据库的代码
- Office365 - 如何修改Teams group关联的Email Address?
- 搬:五大车载操作(VOS)系统优劣对比,车载系统架构分析
- Python数学问题20:存款问题
- 正点原子DS100拆解全过程-硬件工程师必备
- 如何将网络上的共享文件映射到本地
- 三种方式细胞评分对比
- 【观展攻略】2022生物发酵展(济南),展前必读,最全观展攻略带您玩转“发酵圈”