-1

我有一个 Java 程序,它的方法接受 2 个字符串并检查它们是否是彼此的字谜。

我相信有不止一种方法可以确定 2 个字符串是否是字谜 -

逻辑 - 1:排序字符串并检查它们是否相等逻辑 - 2:检查字符串的频率

还有很多其他的方法。

一天结束时,我们可以有多个方法 [每个方法都有不同的逻辑] 获取 2 个字符串并检查它们是否是字谜。

检查这些方法的性能并确定乐观的方法有哪些不同的方法?

有任何想法吗?

4

1 回答 1

1

你可以得到

  • 通过了解所使用的算法来了解时间复杂度。
  • 测量代码预热后不同长度字符串所花费的时间。

对字符串进行排序是 O(n * ln(n)) 和 O(n) 空间。每个字符使用一个计数器是 O(n) 时间和 O(m) 空间(其中 m 是字符范围)。我想在任何实际程序中哪个更快不太重要,但我认为这是一个练习。

于 2012-09-23T19:55:24.600 回答