擅长:python、mysql、java
<p>将参数作为引用传递给函数,因此不能将参数作为参数传递给函数。另一种方法是改变传递给函数的对象。在</p>
<pre class="lang-py prettyprint-override"><code>In [35]: A = {1,3}
...: B = {2,4}
...: aRef1 = A
...: aRef2 = A
...: bRef1 = B
...: bRef2 = B
In [36]: def merge_sets(a, b):
...: for el in b:
...: a.add(el)
...: for el in a:
...: b.add(el)
In [37]: merge_sets(A, B)
In [38]: [id(s) for s in (A, B, aRef1, aRef2, bRef1, bRef2)]
Out[38]:
[140333907731848,
140333907731176,
140333907731848,
140333907731848,
140333907731176,
140333907731176]
In [39]: [s for s in (A, B, aRef1, aRef2, bRef1, bRef2)]
Out[39]:
[{1, 2, 3, 4},
{1, 2, 3, 4},
{1, 2, 3, 4},
{1, 2, 3, 4},
{1, 2, 3, 4},
{1, 2, 3, 4}]
</code></pre>
<p><code>merge_sets</code>以线性时间执行。在</p>