Answer from cs61c-aw (wing hin kao 16500429) for Question 3 Mark-and-sweep garbage collection is used to malloc and free the memory. It uses pointer to allocate an object When storage can be deallocated is to keep track of how many copies there are of a pointer to a particular object. When this number reaches 0, the object can no longer be reached from any root, and may therefore be deleted. we don't build an automatic memory allocation and deallocation system because it could slow down the speed.