动态数组:开辟、销毁内存空间的次数相对较少,但可能造成内存空间的浪费(可以通过缩容解决)
双向链表:开辟、销毁内存空间的次数相对较多,但不会造成内存空间的浪费。
如果频繁在尾部进行添加、删除的操作,动态数组、双向链表均可选择。
如果频繁在头部进行添加、删除操作,建议使用双向链表。
如果有频繁的(在任意位置)进行添加、删除操作,建议使用双向链表。
如果频繁进行查询操作(随机访问操作),建议使用动态数组。
虽然有双向链表,但是单向链表也不是无用,在哈希表有用。
动态数组:开辟、销毁内存空间的次数相对较少,但可能造成内存空间的浪费(可以通过缩容解决)
双向链表:开辟、销毁内存空间的次数相对较多,但不会造成内存空间的浪费。
如果频繁在尾部进行添加、删除的操作,动态数组、双向链表均可选择。
如果频繁在头部进行添加、删除操作,建议使用双向链表。
如果有频繁的(在任意位置)进行添加、删除操作,建议使用双向链表。
如果频繁进行查询操作(随机访问操作),建议使用动态数组。
虽然有双向链表,但是单向链表也不是无用,在哈希表有用。