计算此解决方案的时间复杂度

calculate time complexity for this solution

我有以下代码。我认为该解决方案具有 O(n^2) 因为根据所附图像它是一个嵌套循环。谁能确认一下?

function sortSmallestToLargest(data):
      sorted_data={}

      while data is not empty:
         smallest_data=data[0]

         foreach i in data:
            if (i < smallest_data):
               smallest_data= i

         sorted_data.add(smallest_data)
         data.remove(smallest_data)

      return sorted_data

reference image

好的,现在我知道你在做什么了!是的,你是对的,它是 O(n²),因为你总是在遍历数据的每个元素。您的数据将在每个循环中减少一个,但是由于 O 复杂度我们不关心常量,我们可以说它是 O(n) for each loop。相乘(因为一个在另一个里面)我们有 O(n²).