def test_none(): # 输入 nullptr assert find_min([]) == None
def test_repeat_min(): # 有重复数字,并且重复的数字刚好的最小的数字 lst = [3, 4, 5, 1, 1, 2] assert find_min(lst) == 1
def test_single(): # 数组中只有一个数字 lst = [2] assert find_min(lst) == 2
def test_normal(): lst = [3, 4, 5, 1, 2] assert find_min(lst) == 1
def test_increase(): # 单调升序数组,旋转 0 个元素,也就是单调升序数组本身 lst = [1, 2, 3, 4, 5] assert find_min(lst) == 1
def test_beg_equal_end(): # 有重复的数字,并且重复的数字刚好是第一个数字和最后一个数字 lst = [1, 0, 1, 1, 1] assert find_min(lst) == 0
def test_repeat_not_min(): # 有重复数字,但重复的数字不是第一个数字和最后一个数字 lst = [3, 4, 5, 1, 2, 2] assert find_min(lst) == 1