1. 数组和链表的区别是什么?答案:存储方式数组:连续内存空间链表:非连续内存,通过指针连接访问方式数组:随机访问O(1)链表:顺序访问O(n)插入删除数组:O(n),需要移动元素链表:O(1),只需修改指针内存占用数组:固定大小,可能浪费链表:动态分配,额外存储指针缓存友好性数组:连续内存,缓存友好链表:分散内存,缓存不友好2. 栈和队列的区别?如何实现?答案:特点栈:后进先出(LIFO)队列:先进先出(FIFO)操作栈:push(入栈)、pop(出栈)、top(查看栈顶)队列:push(入队)、pop(出队)、front(查看队首)数组实现栈维护一个top指针push:top++,存入元素...