Tag: 性能

testing两个重叠整数范围的最有效方法是什么?

给定两个包含整数范围[x1:x2]和[y1:y2],其中x1≤x2和y1≤y2,testing两个范围是否有重叠的最有效方法是什么? 一个简单的实现如下: bool testOverlap(int x1, int x2, int y1, int y2) { return (x1 >= y1 && x1 <= y2) || (x2 >= y1 && x2 <= y2) || (y1 >= x1 && y1 <= x2) || (y2 >= x1 && y2 <= x2); } 但我希望有更有效的方法来计算这个。 在最less的操作方面,哪种方法是最有效率的。

C中的最佳时序方法?

计算高分辨率和可移植性的代码段的最佳方式是什么? /* Time from here */ ProcessIntenseFunction(); /* to here. */ printf("Time taken %d seconds %d milliseconds", sec, msec); 有没有一个标准的库可以有一个跨平台的解决scheme?

有没有人实际上实现了Fibonacci-Heap?

有没有人实施过斐波纳契堆 ? 我几年前就这样做了,但比使用基于arrays的BinHeaps慢了几个数量级。 那时候,我认为这是一个很有价值的教训,就是研究并不总是像自称的那么好。 然而,很多研究论文都是基于使用Fibonacci-Heapalgorithm的运算时间。 你有没有设法产生一个有效的实施? 还是你使用的数据集太大,斐波那契堆更有效率? 如果是这样,一些细节将不胜感激。

在你的应用程序中执行sql计算的优缺点是什么?

shopkeeper表有以下领域: id (bigint),amount (numeric(19,2)),createddate (timestamp) 比方说,我有上表。 我想获取昨天的logging,并通过将金额印在美分生成报告。 一种做法是在我的Java应用程序中执行计算并执行一个简单的查询 Date previousDate ;// $1 calculate in application Date todayDate;// $2 calculate in application select amount where createddate between $1 and $2 然后循环遍历logging,并在我的Java应用程序中将金额转换为分,并生成报告 另一种方式就像在SQL查询本身执行计算: select cast(amount * 100 as int) as "Cents" from shopkeeper where createddate between date_trunc('day', now()) – interval '1 day' and date_trunc('day', now()) 然后遍历logging并生成报告 从某种意义上说,我的所有处理都是在java应用程序中完成的,并且简单的查询被触发。 […]

为什么在WebSockets可用时使用AJAX?

我已经使用了一段时间的WebSockets,我已经select使用Node服务器和WebSockets为我在大学的最后一年项目创build一个敏捷项目pipe理工具。 我发现使用WebSocket提供的应用程序可以处理的每秒请求数量增加了624%。 然而,自从开始我已经读过安全漏洞的项目,一些浏览器默认select禁用WebSocket。 这导致我的问题: 为什么在WebSockets似乎在降低延迟和资源开销方面做得如此出色时,使用AJAX有没有AJAX比WebSocket更好的方法?

面板在渲染时间和性能方面的效率最高?

有很多时候,多个面板适合我想要的布局,但是我知道不同面板types的渲染时间有所不同。 例如, MSDN指出 一个相对简单的Panel (如Canvas )可以比一个更复杂的Panel (如Grid具有更好的性能。 那么在渲染时间和性能方面,WPF面板的效率是多less? WPF小组: Canvas DockPanel Grid UniformGrid StackPanel WrapPanel VirtualizingPanel / VirtualizingStackPanel 我确信我在网上看到了这个列表,但现在我找不到它了。 我正在寻找的理想答案将为我提供一个按顺序排列的面板列表,以使其渲染速度最快。 我知道孩子的数量是面板效率的一个重要因素,所以为了这个问题,假设每个面板只有一个Label / TextBox对。 另外,我想列举一些例外情况,例如特定的面板,这些面板在某些条件下performance比其他方面好。 更新 根据下面接受的答案总结,专家组的performance是基于子项目的数量和布局,然而总的来说,从最快到最慢的列表是: Canvas StackPanel WrapPanel DockPanel Grid 另外,如果有很多项目不适合在屏幕上,则应始终使用VirtualizingPanel / VirtualizingStackPanel 。 我强烈build议您阅读下面接受的答案以获取更多详细信息,然后再从此列表中select一个项目。

在R中合并/连接data.frames的最快方法是什么?

例如(不知道如果最有代表性的例子): N <- 1e6 d1 <- data.frame(x=sample(N,N), y1=rnorm(N)) d2 <- data.frame(x=sample(N,N), y2=rnorm(N)) 这是我到目前为止: d <- merge(d1,d2) # 7.6 sec library(plyr) d <- join(d1,d2) # 2.9 sec library(data.table) dt1 <- data.table(d1, key="x") dt2 <- data.table(d2, key="x") d <- data.frame( dt1[dt2,list(x,y1,y2=dt2$y2)] ) # 4.9 sec library(sqldf) sqldf() sqldf("create index ix1 on d1(x)") sqldf("create index ix2 on d2(x)") […]

在Prolog中更快地实现了口头运算

我已经在Prolog中做了一个可操作的广义的语言algorithm求解器,但是它太慢了。 只需要8分钟即可运行简单的expression式SEND + MORE = MONE Y.有人可以帮助我使其运行得更快吗? /* verbalArithmetic(List,Word1,Word2,Word3) where List is the list of all possible letters in the words. The SEND+MORE = MONEY expression would then be represented as verbalArithmetic([S,E,N,D,M,O,R,Y],[S,E,N,D],[M,O,R,E],[M,O,N,E,Y]). */ validDigit(X) :- member(X,[0,1,2,3,4,5,6,7,8,9]). validStart(X) :- member(X,[1,2,3,4,5,6,7,8,9]). assign([H|[]]) :- validDigit(H). assign([H|Tail]) :- validDigit(H), assign(Tail), fd_all_different([H|Tail]). findTail(List,H,T) :- append(H,[T],List). convert([T],T) :- validDigit(T). convert(List,Num) :- […]

封装私有成员作为一个属性和定义一个没有私有成员的属性之间有什么区别?

封装一个私人成员之间有什么区别(性能,内存…等) private int age; public int Age { get { return age; } set { age = value; } } 并定义一个像这样的属性 public int Age { get ; set ; }

Java编译速度vs Scala编译速度

我一直在Scala编程一段时间,我喜欢它,但有一件事我很烦恼是编译程序所花费的时间。 这看起来像一个小东西,但与Java我可以做一些小的改变,我的程序,点击运行button在netbeans和BOOM,它正在运行,随着时间的推移在scala编译似乎要消耗大量的时间。 我听说有很多大型项目,由于编译时间的缘故,脚本语言变得非常重要,这是我在使用Java时没有看到的需求。 但是我从Java那里得知,据我所知,它比任何其他编译语言都快,而且由于我转向Scala(这是一种非常简单的语言)的原因,所以速度很快。 所以我想问一下,我可以让Scala编译得更快,并且可以和javac一样快。