运维工程师采集到某产品线网运行一天产生的日志n条
现需根据日志时间先后顺序对日志进行排序
日志时间格式为H:M:S.N
H表示小时(0~23)
M表示分钟(0~59)
S表示秒(0~59)
N表示毫秒(0~999)
时间可能并没有补全
也就是说
01:01:01.001也可能表示为1:1:1.1

输入描述
   第一行输入一个整数n表示日志条数
   1<=n<=100000
   接下来n行输入n个时间

输出描述
   按时间升序排序之后的时间
   如果有两个时间表示的时间相同
   则保持输入顺序

示例:
   输入:
    2
    01:41:8.9
    1:1:09.211
   输出
     1:1:09.211
     01:41:8.9
 示例
    输入
     3
     23:41:08.023
     1:1:09.211
     08:01:22.0
    输出
      1:1:09.211
      08:01:22.0
      23:41:08.023

示例
    输入
      2
      22:41:08.023
      22:41:08.23
    输出
      22:41:08.023
      22:41:08.23
    时间相同保持输入顺序

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <math.h>
#include <ctype.h>typedef struct {char str[100];int H;int M;int S;int N;long long totalTime;
}LogTimeInfo;int cmp(const void *a, const void *b){LogTimeInfo * x = (LogTimeInfo *)a;LogTimeInfo * y = (LogTimeInfo *)b;if( x->totalTime > y->totalTime){return 1;} else if(x->totalTime < y->totalTime){return -1;}//return x->totalTime - y->totalTime;
}int main()
{int num;scanf("%d",&num);LogTimeInfo *logList = malloc(sizeof(LogTimeInfo) * num);for (int i = 0; i < num; i++) {char *p = NULL;char *q = NULL;char s[100] = {0};char tmpStr[4][10];memset(tmpStr, 0, sizeof(tmpStr));scanf("%s", s);strcpy(logList[i].str, s);int j = 0;p = strtok(s, ":");while (p != NULL) {strcpy(tmpStr[j++], p);p = strtok(NULL, ":");}logList[i].H = atoi(tmpStr[0]);logList[i].M = atoi(tmpStr[1]);//printf("tmpStr[2]:%s\n",tmpStr[2]);int SNList[2] = {0};int idx = 0;q = strtok(tmpStr[2], ".");while (q != NULL) {SNList[idx++] = atoi(q);q = strtok(NULL, ".");}logList[i].S = SNList[0];logList[i].N = SNList[1];logList[i].totalTime = logList[i].H *60*60*1000 +  logList[i].M * 60 *1000 + logList[i].S *1000 + logList[i].N;}qsort(logList, num, sizeof(LogTimeInfo), cmp);for (int i = 0; i < num; i++) {//printf("%d %d %d %d   %lld\n", logList[i].H, logList[i].M, logList[i].S, logList[i].N, logList[i].totalTime);printf("%s\n", logList[i].str);}free(logList);return 0;
}

题目78----根据日志时间先后顺序对日志进行排序相关推荐

  1. mysql之日志时间统计---每类日志时间间隔(间隔超过多少分钟统计出来)

    前提:因笔者业务需求,在某一种日志类型中,记录某个机器的上线掉线记录.根据上线掉线时间间隔进行筛选.然后查询总结了一下如下sql 1mybatis中的xml内容 <select id=" ...

  2. python分布式日志收集系统_分布式日志收集系统Scribe原理

    1.分布式日志收集系统:背景介绍 许多公司的平台每天会产生大量的日志(一般为流式数据,如,搜索引擎的pv,查询等),处理这些日志需要特定的日志系统,一般而言,这些系统需要具有以下特征: (1) 构建应 ...

  3. 操作系统老师上课讲的那个根据I/O时间和CPU时间比例来为进程分配优先级的题目,I/O时间比例越大,则这个进程的优先级越高

    链接:https://www.nowcoder.com/questionTerminal/bf9435b00606484c9f85fe93c72bf06d 来源:牛客网 某系统正在执行三个进程 P1. ...

  4. mysql每一步花费时间_MySQL之:日志

    日志: 事务日志:transaction log 中继日志:reley log 错误日志:error log 通用日志:general log 慢查询日志:slow query log 二进制日志:b ...

  5. power bi排序_如何在Power BI中按时间顺序对月份进行排序

    power bi排序 In this article, I'm going to demonstrate how to sort months chronologically in Power BI. ...

  6. mysql日志恢复的时间格式_mysql binlog 日志恢复数据

    首先:开启binlog日志 server-id=1 log-bin=mysql-bin binlog_format=MIXED binlog_format有三种格式: 1)只有sql语句STATEME ...

  7. es获取最大时间的记录_Python日志写入ES之五种方案比较

    ​实时/准实时方案可以使用以下四种方式实现: flume+kafka+spark准实时写入ES logging + CMRESHandler实时写入ES 利用python中的Elasticsearch ...

  8. svn服务器记录日志文件,svn服务器日志时间设置

    svn服务器日志时间设置 内容精选 换一换 日志记录了运行环境的运行情况和功能流程的处理情况,是维护人员查看系统状态.进行问题定位的重要工具和手段.日志模块根据系统设置的日志级别,记录不同详细程度的内 ...

  9. docker日志显示时间时区错误,时区UST问题/群晖docker日志时间不正确 寻找解答过程

    问题: 群晖的docker日志时间显示差了8小时,应该是UTC时间问题 进宿主机敲docker logs -t 也是显示UTC时区 寻找解决办法: 网上找了无数个教程, 按照如下方法修改时区 ln - ...

最新文章

  1. Servlet入门 代码
  2. HTTP 笔记与总结(7)HTTP 缓存(配合 Apache 服务器)
  3. CSDN鸿蒙社区福利:HarmonyOS Beta 版内测资格申请
  4. python大作业爬虫_爬虫大作业
  5. 关店9000家,市值蒸发90%,女装巨头大崩溃的根源找到了
  6. 哪里有现成的问卷调查数据_何去何从?被数据掩埋的「消费者旅程」
  7. SQL SERVER 2008的GEOMETRY类型
  8. 华为入局 VR 眼镜能让 VR 早普及几年?|CSDN博文精选
  9. 西瓜书学习笔记2-多元线性回归公式推导
  10. Win7 maven安装及配置
  11. margin和padding的学习
  12. 阿里云热修复Sophix接入
  13. vulfocus——maccms远程命令执行(CVE-2017-17733)
  14. 学习笔记 Tianmao 篇 OkHttp 网络的使用的简单封装 获取Json用GSON来解析
  15. 推荐几款连字字体,在代码编辑器中启用连字字体(Visual Studio Code)
  16. Python.translate(table).maketrans(‘str1‘,‘str2‘)字符串翻译
  17. 手把手教你给小米游戏本安装macOS
  18. 【SaaS考试认证】aPaaS_腾讯千帆神笔
  19. 鸿蒙系统基于Linux打造,其本质还是安卓系统?
  20. import numpy出现ImportError: DLL load failed: 找不到指定的模块的解决方案

热门文章

  1. 基恩士KV8000系列PLC,控制松下总线伺服和山社总线步进电机,全套图纸,DWG格式,一整套图纸发给你
  2. Ubuntu 20.10 安装 gcc, g++,clang,make,make-guile
  3. 条形码识别(4)——校验
  4. jQuery的单机和双击事件
  5. 百度SEO站群黑侠超级站群助手
  6. 暗备用的运行状态_电力系统自动装置随堂练习
  7. 计算机桌面输入法没有了怎么办,输入法没了怎么办(电脑右下角输入法不见了怎么办)...
  8. 2021-2027全球与中国通用传动轴市场现状及未来发展趋势
  9. Fine-grained Detection —— TransFG
  10. 京东运维开发工程师一面经验总结2020