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相关推荐

  1. 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 ...

  2. 【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 ...

  3. 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 ...

  4. MongoDB 日志切换(Rotate Log Files)实战

    MongoDB 日志切换(Rotate Log Files)实战 1. 在mongo shell下,执行logRotate命令: use admin db.runCommand({logRotate: ...

  5. MongoDB日志切换(Rotate Log Files)指南

    MongoDB日志切换(Rotate Log Files)指南 MongoDB默认情况下不会自动的切换轮转日志的,这将会导致日志日渐增大,在繁忙的业务下,日志增长量非常大的.如此之大的日志文件,查看某 ...

  6. oracle修改redolog路径,oracle修改redo log files路径

    如果可以关闭数据库,可以采用下述步骤.如果不能关闭数据库,只能采用新建redo log files的方式来实现修改该redo 的路径了. 一.shutdown the database 二.拷贝red ...

  7. oracle修改redo路径,oracle修改redo log files路径

    如果可以关闭数据库,可以采用下述步骤.如果不能关闭数据库,只能采用新建redo log files的方式来实现修改该redo 的路径了. 一.shutdown the database 二.拷贝red ...

  8. LeetCode/LintCode 题解丨一周爆刷字符串:URL 编码

    描述 给出一个代表网址 host 的字符串 base_url,和代表查询参数的列表 query_params_list,你需要返回带查询参数的完整 URL. 查询参数列表由一些包含两个元素的数组组成, ...

  9. LeetCode/LintCode 题解丨一周爆刷双指针:最小范围

    描述 有k个升序排列的数组,寻找一个最小范围,使每个数组中至少有一个元素被包含. 范围[a,b]比范围[c,d]小,当且仅当b-a < d-c,或是a < c且b-a == d-c. 给定 ...

最新文章

  1. 记录一次自己调试代码的过程
  2. mysql错误:this authentication plugin is not supported
  3. 跨链(8)Cosmos之“跨链交互协议IBC”
  4. 【Java】Float计算不准确
  5. linux 离线安装nfs,ubuntu 上离线安装包制作与安装之NFS搭建
  6. php的全局p变量程序_php全局变量的使用
  7. 大话设计模式C++版——代理模式
  8. 高效的JavaScript
  9. TOGAF9.2企业架构师考试小记
  10. .NET简谈分层架构思想(彻底分离每个层)
  11. 各国区号json整理
  12. 王者荣耀李白王昭君情侣头像故事: “风雨如晦,鸡鸣不已。既见君子,云胡不喜。”...
  13. python访问纯真IP数据库的代码
  14. Office365 - 如何修改Teams group关联的Email Address?
  15. 搬:五大车载操作(VOS)系统优劣对比,车载系统架构分析
  16. Python数学问题20:存款问题
  17. 正点原子DS100拆解全过程-硬件工程师必备
  18. 如何将网络上的共享文件映射到本地
  19. 三种方式细胞评分对比
  20. 【观展攻略】2022生物发酵展(济南),展前必读,最全观展攻略带您玩转“发酵圈”

热门文章

  1. Struts2的概述和入门
  2. 【Unity】5.1 3D坐标系基础知识
  3. JAVA基础代码分享--学生成绩管理
  4. CodeForces 66C Petya and File System (实现)
  5. 网易有道CEO周枫:在线教育的冰山
  6. 收集Cocos2d提供的字体!共57种
  7. 征服Perl——输入输出相关知识——里程碑M6
  8. 用友服务器整体迁移--数据库附加
  9. 收藏:用DE-9IM判断二维空间位置关系
  10. 实时大数据开发难、运维难、应用难?来,一站解决!