ArrayListJavaでのクローンを作成し、そのアイテムをクローンするにはどうすればよいですか? たとえば、私は持っています: ArrayList<Dog> dogs = getDogs(); ArrayList<Dog> clonedList = ....something to do with dogs.... そして、私はのオブジェクトclonedListが犬のリストと同じではないことを期待します。
リストのコピーに問題があります: E0から取得した後'get_edge'、をE0呼び出してのコピーを作成します'E0_copy = list(E0)'。ここで私は推測するE0_copyのディープコピーであるE0、と私は合格E0_copyへ'karger(E)'。しかし、メイン関数で。forループ の'print E0[1:10]'前の結果がforループの後の結果と同じではないのはなぜですか? 以下は私のコードです: def get_graph(): f=open('kargerMinCut.txt') G={} for line in f: ints = [int(x) for x in line.split()] G[ints[0]]=ints[1:len(ints)] return G def get_edge(G): E=[] for i in range(1,201): for v in G[i]: if v>i: E.append([i,v]) print id(E) return E def karger(E): import random count=200 while 1: …