刚开始考虑的是链表，后来用结构体数组更方便