题目78----根据日志时间先后顺序对日志进行排序
运维工程师采集到某产品线网运行一天产生的日志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----根据日志时间先后顺序对日志进行排序相关推荐
- mysql之日志时间统计---每类日志时间间隔(间隔超过多少分钟统计出来)
前提:因笔者业务需求,在某一种日志类型中,记录某个机器的上线掉线记录.根据上线掉线时间间隔进行筛选.然后查询总结了一下如下sql 1mybatis中的xml内容 <select id=" ...
- python分布式日志收集系统_分布式日志收集系统Scribe原理
1.分布式日志收集系统:背景介绍 许多公司的平台每天会产生大量的日志(一般为流式数据,如,搜索引擎的pv,查询等),处理这些日志需要特定的日志系统,一般而言,这些系统需要具有以下特征: (1) 构建应 ...
- 操作系统老师上课讲的那个根据I/O时间和CPU时间比例来为进程分配优先级的题目,I/O时间比例越大,则这个进程的优先级越高
链接:https://www.nowcoder.com/questionTerminal/bf9435b00606484c9f85fe93c72bf06d 来源:牛客网 某系统正在执行三个进程 P1. ...
- mysql每一步花费时间_MySQL之:日志
日志: 事务日志:transaction log 中继日志:reley log 错误日志:error log 通用日志:general log 慢查询日志:slow query log 二进制日志:b ...
- power bi排序_如何在Power BI中按时间顺序对月份进行排序
power bi排序 In this article, I'm going to demonstrate how to sort months chronologically in Power BI. ...
- mysql日志恢复的时间格式_mysql binlog 日志恢复数据
首先:开启binlog日志 server-id=1 log-bin=mysql-bin binlog_format=MIXED binlog_format有三种格式: 1)只有sql语句STATEME ...
- es获取最大时间的记录_Python日志写入ES之五种方案比较
实时/准实时方案可以使用以下四种方式实现: flume+kafka+spark准实时写入ES logging + CMRESHandler实时写入ES 利用python中的Elasticsearch ...
- svn服务器记录日志文件,svn服务器日志时间设置
svn服务器日志时间设置 内容精选 换一换 日志记录了运行环境的运行情况和功能流程的处理情况,是维护人员查看系统状态.进行问题定位的重要工具和手段.日志模块根据系统设置的日志级别,记录不同详细程度的内 ...
- docker日志显示时间时区错误,时区UST问题/群晖docker日志时间不正确 寻找解答过程
问题: 群晖的docker日志时间显示差了8小时,应该是UTC时间问题 进宿主机敲docker logs -t 也是显示UTC时区 寻找解决办法: 网上找了无数个教程, 按照如下方法修改时区 ln - ...
最新文章
- Servlet入门 代码
- HTTP 笔记与总结(7)HTTP 缓存(配合 Apache 服务器)
- CSDN鸿蒙社区福利:HarmonyOS Beta 版内测资格申请
- python大作业爬虫_爬虫大作业
- 关店9000家,市值蒸发90%,女装巨头大崩溃的根源找到了
- 哪里有现成的问卷调查数据_何去何从?被数据掩埋的「消费者旅程」
- SQL SERVER 2008的GEOMETRY类型
- 华为入局 VR 眼镜能让 VR 早普及几年?|CSDN博文精选
- 西瓜书学习笔记2-多元线性回归公式推导
- Win7 maven安装及配置
- margin和padding的学习
- 阿里云热修复Sophix接入
- vulfocus——maccms远程命令执行(CVE-2017-17733)
- 学习笔记 Tianmao 篇 OkHttp 网络的使用的简单封装 获取Json用GSON来解析
- 推荐几款连字字体,在代码编辑器中启用连字字体(Visual Studio Code)
- Python.translate(table).maketrans(‘str1‘,‘str2‘)字符串翻译
- 手把手教你给小米游戏本安装macOS
- 【SaaS考试认证】aPaaS_腾讯千帆神笔
- 鸿蒙系统基于Linux打造,其本质还是安卓系统?
- import numpy出现ImportError: DLL load failed: 找不到指定的模块的解决方案
热门文章
- 基恩士KV8000系列PLC,控制松下总线伺服和山社总线步进电机,全套图纸,DWG格式,一整套图纸发给你
- Ubuntu 20.10 安装 gcc, g++,clang,make,make-guile
- 条形码识别(4)——校验
- jQuery的单机和双击事件
- 百度SEO站群黑侠超级站群助手
- 暗备用的运行状态_电力系统自动装置随堂练习
- 计算机桌面输入法没有了怎么办,输入法没了怎么办(电脑右下角输入法不见了怎么办)...
- 2021-2027全球与中国通用传动轴市场现状及未来发展趋势
- Fine-grained Detection —— TransFG
- 京东运维开发工程师一面经验总结2020