661. 图片平滑器

该题目网址如下:

https://leetcode-cn.com/problems/image-smoother/description/

本题使用python则会涉及到python内存管理(数组深浅拷贝)的问题。

当你创建一个对象,然后把它赋给另一个变量的时候,python并没有拷贝这个对象,而是拷贝了该对象的引用。

字符串被显式拷贝,并创建一个字符串对象,而列表元素只是将其引用复制,并不是它成员。

最初数组为:

N = [[0]*M_y]*M_X

由于list * n—>n shallow copies of list concatenated, n个list的浅拷贝的连接。所以答案全为为最后list的拷贝,不符合题意。

可以将数组修改为:

N = [[0 for i in range(M_y)] for i in range(M_x)]

原文地址:https://www.cnblogs.com/lirunzhou/p/8945601.html