backup
backup
backup
dfs
linked list, merge sort