我需要得出这个验证程序的大O符号。它的工作是接受这种类型的产品条目:'jacket,8,12,18,16,6',验证它,对大小进行排序,按字母顺序将条目排序到列表中,并在每个条目后打印新列表。
Big-O表示法基于最坏情况,即程序花费最长时间执行特定输入。采用'parseData'方法,最坏的情况是输入完全有效,因此没有传递任何异常并且所有方法都被执行。产品名称包含15个字符,并输入5种尺寸。在这种情况下,此方法和下面的其他较小的验证方法将始终采用相同的时间段来执行此最坏情况事件。这给了他们O(1)复杂性,如评论中所示。
总的来说,有; - 验证 - O(n) - 排序 - O(nlogn) - 打印 - O(n ^ 2)
这会归结为O(n ^ 2)吗?或者它取决于考虑的条目数量?
答案 0 :(得分:0)
对于渐近分析,它将归结为O(n ^ 2),因为它比O(n logn)和O(n)生长得快得多。但请注意,这只是一个渐近的上限,这意味着它可能不是真的很紧,正如你所说,它是最坏的情况,而不是平均或预期的情况。