Author's photo
Zrušený účet
Python

Urcovani casove narocnosti Theta pro algoritmus v Pythonu. Hledam akutni pomoc v teto problematice.. Odmena jista.

def calculate_next_grid(old_grid: list, num_rows: int, num_cols: int) -> list:
new_grid = []
for row_index in range(num_rows):
new_row = []
for col_index in range(num_cols):
num_neighbours = get_neighbours(old_grid, row_index, col_index)
current_cell = old_grid[row_index][col_index]
if current_cell == '@':
if num_neighbours == 2 or num_neighbours == 3:
new_row.append('@')
else:
new_row.append(' ')
else:
if num_neighbours == 3:
new_row.append('@')
else:
new_row.append(' ')
new_grid.append(new_row)
return new_grid

1 odpověď
Řekl bych, že se jedná o O(n^2), kde n je počet řádků a sloupců, protože velikost loopů je konstantní.