-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Description
src/chapter02/part05/MyArray.py中inser和insert_v2函数中的判断访问下标是否超出范围语句无效
class MyArray:
def __init__(self, capacity):
self.array = [None] * capacity
self.size = 0
def insert(self, index, element):
# 判断访问下标是否超出范围
if index < 0 or index > self.size:
raise Exception("超出数组实际元素范围!")
...
def insert_v2(self, index, element):
# 判断访问下标是否超出范围
if index < 0 or index > self.size:
raise Exception("超出数组实际元素范围!")
...
使用self.size作为数组上界的判断,是无效的;
初始的self.size=0,每次插入新值后,self.size+1;
如果按序进行插入,下一个index=0,1,2,3这样插入,判断访问下班是否超出范围的分支会一直失效,起不到判断的作用。
index size
0 1
1 2
2 3
3 4
....
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels