您好,我想了解String类中"replaceAll"函数的时间复杂度,但是我找不到相关信息。(http://docs.oracle.com/javase/6/docs/api/java/lang/String.html)
Java是否应该在Javadoc中包含这些复杂性呢?我认为这对于某些人来说是非常重要的事情。
您好,我想了解String类中"replaceAll"函数的时间复杂度,但是我找不到相关信息。(http://docs.oracle.com/javase/6/docs/api/java/lang/String.html)
Java是否应该在Javadoc中包含这些复杂性呢?我认为这对于某些人来说是非常重要的事情。
大多数函数的时间复杂度相当直观。据我所知,replaceAll的时间复杂度为O(n)。
在我看来,没有什么比用分析工具(如分析器)进行实证测试更能说明问题,因为你使用的99%的方法很可能对应用程序的性能影响不大甚至没有影响。
然而,有时候复杂性可能是:该实现提供基本操作(get和put)的常数时间性能...
如果你使用基本操作的空间/时间复杂度来驱动设计决策,那么你几乎肯定是错误的。
首先构建一个正确的应用程序,然后进行分析。然后优化分析过程揭示的瓶颈。
String.replaceAll
,其中有效复杂度关键取决于 regex
字符串。(设计不良的正则表达式可能会使匹配非常缓慢。)