时间计算

php计算工作日

走远了吗. 提交于 2019-12-01 02:17:09
  在做政府项目时经常会遇到要就算工作日的情况,在网上找了一圈就只有一些告诉大家怎么做的没有可以拿来就用的代码(可能是没有找到),所以我就把我写出来的发出来;   我是用thinkphp5写的,原生或其他框架可以直接复制计算节假日类;   首先说下我是怎么做的:    第一步     获取节假日安排,由于考虑到人家接口的稳定性然后又没有找到对应大厂的接口,这个我就自己写了,这个我就不详细写了,后面会贴出对应的代码,直接整合就好了         第二步      我是习惯先写调用的接口,所以在接口中规定要计算的开始时间、天数,返回的格式(最后一天或中间所有的时间)         第三步      调用接口由于到数据库中存的节假日安排的只有一个开始时间没有详细的放假时间,所以先处理详细的放假安排,然后考虑到如果计算天数很大的话可能会出现内存泄漏的问题,所以我就把放假时间和补班时间放在了一个数组中,减少后面的遍历         第四步     生成从指定时间到指定天数的原始数据,如:2019-10-10是开始时间,计算100天工作日的时间,就先生成一百条数据,从10月11日开始明天一条数据存到数组中                    第五步        判断原始数据中的时间是否是周六、周日或节假日,是的话就删除对应的值,重新生成,一直处理到没有周六周日和节假日为止

MapReduce:大型集群上的简单数据处理

Deadly 提交于 2019-11-30 04:28:27
MapReduce :大型集群上的 简单数据处理 摘要 MapReduce是一个设计模型,也是一个处理和产生海量数据的一个相关实现。用户指定一个用于处理一个键值(key-value)对生成一组key/value对形式的中间结果的map函数,以及一个将中间结果键相同的键值对合并到一起的reduce函数。许多现实世界的任务都能满足这个模型,如这篇文章所示。 使用这个功能形式实现的程序能够在大量的普通机器上并行执行。这个运行程序的系统关心下面的这些细节:输入数据的分区、一组机器上调度程序执行、处理机器失败问题,以及管理所需的机器内部的通信。这使没有任何并行处理和分布式系统经验的程序员能够利用这个大型分布式系统的资源。 我们的MapReduce实现运行在一个由普通机器组成的大规模集群上,具有很高的可扩展性:一个典型的MapReduce计算会在几千台机器上处理许多TB的数据。程序员们发现这个系统很容易使用:目前已经实现了几百个MapReduce程序,在Google的集群上,每天有超过一千个的MapReduce工作在运行。 一、 介绍 在过去的5年中,本文作者和许多Google的程序员已经实现了数百个特定用途的计算程序,处理了海量的原始数据,包括抓取到的文档、网页请求日志等,计算各种衍生出来的数据,如反向索引、网页文档的图形结构的各种表示、每个host下抓取到的页面数量的总计

Android 系统时间获取,与计算

筅森魡賤 提交于 2019-11-30 03:35:17
Android 系统时间获取,与计算 获取字符型时间 SimpleDateFormat simpleDateFormat = new SimpleDateFormat ( "yyyy年MM月dd日 HH:mm:ss" ) ; // HH:mm:ss //获取当前时间 Date date = new Date ( System . currentTimeMillis ( ) ) ; //毫秒值 time1 . setText ( "Date获取当前日期时间" + simpleDateFormat . format ( date ) ) ; 这里的时间格式可以动态的更具里的需求来写。 比如这样是可行的 SimpleDateFormat simpleDateFormat = new SimpleDateFormat ( "yyyy-MM-dd HH:mm:ss" ) ; SimpleDateFormat simpleDateFormat = new SimpleDateFormat ( "yyyy-MM-dd" ) ; 获取数据型时间 Calendar calendar = Calendar . getInstance ( ) ; //获取系统的日期 //年 int year = calendar . get ( Calendar . YEAR ) ; //月 int month =

动手学PyTorch | (34) 门控循环单元(GRU)

一世执手 提交于 2019-11-30 01:45:18
上⼀节介绍了循环神经网络中的梯度计算方法。我们发现,当时间步数T较大或者当前时间步t较小时,循环神经⽹络的梯度较容易出现衰减或爆炸。虽然裁剪梯度可以应对梯度爆炸,但⽆法解决梯度衰减的问题。 通常由于这个原因,循环神经网络在实际中较难捕捉时间序列中时间步距离较大的依赖关系。 ⻔控循环神经网络(gated recurrent neural network)的提出,正是为了更好地捕捉时间序列中时间步距离较大的依赖关系。它通过可以学习的⻔来控制信息的流动。其中,⻔控循环单元(gated recurrent unit,GRU)是一种常⽤的⻔控循环神经⽹络。另一种常⽤的⻔控循环神经网络则将在下一节中介绍。 目录 1. 门控循环单元 2. 读取数据集 3. 从0开始实现 4. 简洁实现 5.小结 1. 门控循环单元 下⾯将介绍⻔控循环单元的设计。它引⼊了􏰀重置门(reset gate)和更新门(update gate)的概念,从⽽修改了循环神经网络中隐藏状态的计算方式。 重置门和更新门 如下图所示,⻔控循环单元中的重􏰀置门和更新门的输⼊均为当前时间步输入 与上一时间步隐藏状态 ,输出由激活函数为sigmoid函数的全连接层计算得到。 具体来说,假设隐藏单元个数为h,给定时间步t的小批量输入 (样本数为n(batch_size),输入个数为d)和上一时间步隐藏状态 ,重置门 和更新门 的计算如下:

新手学习FFmpeg - 调用API计算关键帧渲染时间点

做~自己de王妃 提交于 2019-11-29 21:07:20
通过简单的计算来,线上I帧在视频中出现的时间点。 完整代码请参考 https://andy-zhangtao.github.io/ffmpeg-examples/ 名词解释 首先需要明确以下名词概念: I/P/B 帧(具体差异请参看 https://www.jianshu.com/p/18af03556431 ) I帧: 内部编码帧(关键帧) P帧: 前向预测帧(根据I帧计算差值) B帧: 双向预测帧(根据I帧和P帧计算差值) PTS: 帧显示的时间刻度(在哪个时间点显示此帧) DTS: 帧解码的时间刻度(在哪个时间点解码此帧) Timestamp: 帧在视频内部的时间戳 Time_base: 视频表示时间的"刻度" 处理流程 视频内没有绝对时间,只有相对时间(相对视频起始位置)。例如在播放器中看到的时间进度条"00:00:05"表示的是当前看到的帧是在相对起始时间点(00:00:00)解码并渲染的。 而"00:00:05"只是为了让用户方便理解而展现出来的,在视频内部则是使用时间戳来保存的,"00:00:05"可能相对的时间戳则是"5000000µs"(不考虑四舍五入)。 那么时间戳又是怎么计算出来的呢?此时就需要通过PTS和Time_base来配合计算。 首先来看Time_base。 Time_base好比一把尺子,上面标满了刻度,例如(1,60)表示时间刻度就是1/60

多波次导弹发射中的规划问题(二)

若如初见. 提交于 2019-11-29 14:48:25
前言 在 多波次导弹发射中的规划问题(一) 网络图绘制及数据整理 中,我们初步整理出了作战区域网络图,以及各种车型在网络中行车的耗时矩阵。接下来我们来研究问题一的解题步骤,这是其他几问的基础,一旦确定了问题一的解题思路和模型,其他几问可以在此基础上进行修改调整即可轻松搞定。 问题分析 明确作战任务的网络图 本次多波次导弹发射的作战任务建立在网络图上,网络图相当于地图,是一切作战任务安排的基本依据。在 多波次导弹发射中的规划问题(一) 网络图绘制及数据整理 中,初步整理工作已经完成。在这里还是要明确网络图的一些信息: 网络图中一共有130个点,其中 待机区域为 D1 ~D2 (序号为 1 ~ 2 ) 转载区域为 Z01 ~ Z06 (序号为 3 ~ 8 ) 发射区域为 F01 ~ F60 (序号为 9 ~ 68 ) 道路节点为 J01 ~ J62 (序号为 69 ~ 130 ) J01 ~ J11 为主干道 1 (序号为 69 ~ 79 ) J12 ~ J20 为主干道 2 (序号为 80 ~ 88 ) J21 ~ J62 为其他道路 (序号为 89 ~ 130 ) 明确作战任务的发射车属性 在本题目的多波次导弹发射任务中,执行任务的一共有三种车型,记为 A型车 B型车 C型车 。这些车按照车型和行车道路,其行车速度会有不同: 发射车基本信息 数量 主干道车速(km/h)

SylixOS时间变换介绍

若如初见. 提交于 2019-11-29 14:38:08
[TOC] 1、概述 SylixOS中提供了时间变换相关接口,主要用于计算两个时间点之差以及根据入参时间timespec计算超时时间。 2、接口介绍 2.1 计算两个时间点之差 SylixOS中用于计算两个时间点之差的接口函数原型如下: ULONG __timespecToTickDiff (const struct timespec *ptvS, const struct timespec *ptvE); INT64 __timespecToTickDiff64 (const struct timespec *ptvS, const struct timespec *ptvE); 函数原型分析:  - 函数返回两个时间点之差,并转换为tick数;  - 参数ptvS是开始时间;  - 参数ptvE是结束时间。 以上两个函数接口入参定义相同,唯一的区别是返回值分别是32位和64位数值。 2.2 根据timespec计算超时时间 SylixOS中用于计算超时时间的接口函数原型如下: ULONG __timespecTimeoutTick (BOOL bRel, const struct timespec *ptv); INT64 __timespecTimeoutTick64 (BOOL bRel, const struct timespec *ptv); 函数原型分析: 

c语言/c++计算程序运行时间

Deadly 提交于 2019-11-29 13:19:52
精确到毫秒(ms) 精确到微秒(us) #include<stdio.h> #include <windows.h> int main() { int a[10002]; int i = 0; double run_time; _LARGE_INTEGER time_start; //开始时间 _LARGE_INTEGER time_over; //结束时间 double dqFreq; //计时器频率 LARGE_INTEGER f; //计时器频率 QueryPerformanceFrequency(&f); dqFreq=(double)f.QuadPart; QueryPerformanceCounter(&time_start); //计时开始 /* 代码句 */ QueryPerformanceCounter(&time_over); //计时结束 run_time=1000000*(time_over.QuadPart-time_start.QuadPart)/dqFreq; //乘以1000000把单位由秒化为微秒,精度为1000 000/(cpu主频)微秒 printf("\nrun_time:%fus\n",run_time); return 0; } 来源: https://www.cnblogs.com/Emcikem/p/11518388.html

统计-stats

为君一笑 提交于 2019-11-29 02:04:44
统计-stats SciPy的stats模块包含了多种概率分布的随机变量 [1] ,随机变量分为连续和离散两种。所有的连续随机变量都是rv_continuous的派生类的对象,而所有的离散随机变量都是rv_discrete的派生类的对象。 Footnotes [1] 本节中的随机变量是指概率论中的概念,不是Python中的变量 连续和离散概率分布 可以使用下面的语句获得stats模块中所有的连续随机变量: >>> from scipy import stats >>> [k for k,v in stats.__dict__.items() if isinstance(v, stats.rv_continuous)] ['genhalflogistic','triang','rayleigh','betaprime', ...] 连续随机变量对象都有如下方法: rvs:对随机变量进行随机取值,可以通过size参数指定输出的数组的大小。 pdf:随机变量的概率密度函数。 cdf:随机变量的累积分布函数,它是概率密度函数的积分。 sf:随机变量的生存函数,它的值是1-cdf(t)。 ppf:累积分布函数的反函数。 stat:计算随机变量的期望值和方差。 fit:对一组随机取样进行拟合,找出最适合取样数据的概率密度函数的系数。 03-scipy/scipy_stats.py 概率密度函数