The output for G and G1 list is different.
numCourses = 2
prerequisites = [[1,0]]
G = [[] for i in range(numCourses)]
G1 = [[]]*numCourses
for i,j in prerequisites:
G[j].append(i)
for i,j in prerequisites:
G1[j].append(i)
I get following output G = [[1],[]] and G1 = [[1],[1]]