Tag: 度量

在C#中测量执行时间

我想测量一段代码的执行情况,我想知道最好的方法是什么? 选项1: DateTime StartTime = DateTime.Now; //Code TimeSpan ts = DateTime.Now.Subtract(StartTime); string elapsedTime = String.Format("{0:00}:{1:00}:{2:00}.{3:00}", ts.Hours, ts.Minutes, ts.Seconds, ts.Milliseconds / 10); Console.WriteLine(elapsedTime, "RunTime"); 选项2:使用System.Diagnostics; Stopwatch stopWatch = new Stopwatch(); stopWatch.Start(); //Code stopWatch.Stop(); // Get the elapsed time as a TimeSpan value. TimeSpan ts = stopWatch.Elapsed; // Format and display the TimeSpan value. string elapsedTime = […]

你觉得圈复杂性是一个有用的措施?

我一直在测量一个大代码库的圈复杂度。 循环复杂性是通过程序源代码的线性独立path的数量,有许多免费的工具供您select。 结果是有趣的,但并不奇怪。 也就是说,我所知道的最有趣的部分实际上是最复杂的(评分> 50)。 但是我发现有用的是每个方法都有一个具体的“坏”数字,这个数字是我在决定从何处开始重构的时候可以指向的。 你用循环复杂吗? 什么是你find的最复杂的代码?

为什么使用石墨碳聚合器可以做同样的工作statsd?

我一直在探索用于显示来自多个服务器的指标的Graphite绘图工具,并且似乎“推荐”的方式是首先将所有指标数据发送到StatsD。 StatsD汇总数据并将其发送到石墨(或碳)。 在我的情况下,我想要在服务器上进行简单的聚合,比如总和和平均值,并绘制石墨图。 石墨带有碳聚合器,可以做到这一点。 StatsD甚至不提供我正在谈论的那种聚合。 我的问题是 – 我应该使用statsd作为我的用例吗? 我在这里错过的任何东西?

八岁的大O?

我更多地询问这对我的代码意味着什么。 我从math的angular度理解了这些概念,我只是很难从概念上理解他们的意思。 例如,如果要在数据结构上执行O(1)操作,那么我知道它所执行的操作数量不会增长,因为有更多的项目。 O(n)操作将意味着您将对每个元素执行一组操作。 有人可以填空吗? 像一个O(n ^ 2)操作到底会做什么? 如果一个操作是O(n log(n)),那么这意味着什么? 还有人不得不抽烟裂口写一个O(X!)?

如何计算给定2个string的距离相似度量?

我需要计算给定的2个string的距离相似性度量。 那我究竟是什么意思? 让我用例子来解释 真正的字眼: hospital 错误的词: haspita 现在我的目标是,我需要修改错误的单词来获得真实的单词。 在这个例子中,我需要修改2个字母。 那么百分比是多less? 我总是把真实的词汇的长度。 所以它变成2/8 = 25%,所以这2个stringDSM是75%。 我如何才能做到这一点,性能是一个关键的考虑因素?