在开头插入是什么复杂度
在最前面插入一个元素,时间复杂度是【0】。
在末尾追加(没满时)是什么复杂度
座位还没坐满,在末尾追加一个,复杂度是【0】。
在开头插入要挪几次
运行下面这段程序,它数的是"挪了几次": n = 5 moves = 0 for j in range(n, 0, -1): moves += 1 print(moves)
在末尾追加要挪几次
同样数"挪了几次",这次是在末尾追加: n = 5 moves = 0 # 末尾追加:后面本来就是空的,一个都不用挪 print(moves)
数一数在开头插入挪了多少次
补全 insert,让它顺便统计挪动次数。 在一排 4 个人的最前面插入一个,输出挪了几次。
同一个方法,插在末尾挪几次
同一个 insert,这次插在末尾。 补全后输出挪了几次,和上一题比一比。
给一句话选出它的复杂度
补全 cost:按操作名返回复杂度。按下标访问和末尾追加是 O(1),开头插入和删除是 O(n)。 补全后输出"开头插入"的复杂度。
空表取第一个会怎样
一排一个人都没有,还去取下标 0,结果是【0】。
下标超出范围会抛什么
取一个超出范围的下标,Python 会抛出【0】。
越界会报什么错
运行下面这段程序,它把错误类型打出来: a = [1, 2, 3] try: a[10] except Exception as e: print(type(e).__name__)