数组面试题30 题
- 01 如何原地去除有序数组中的重复元素?
- 02 数组的随机访问为什么是 O(1)?下标是怎么定位到元素的?
- 03 数组和链表有什么区别?各自适合什么场景?
- 04 数组里的 length、size 和 capacity 有什么区别?
- 05 数组题为什么容易出现越界和 off-by-one 错误?
- 06 为什么数组的插入和删除平均是 O(n)?
- 07 二维数组在内存中是如何存储和寻址的?
- 08 交错数组和二维数组有什么区别?
- 09 如何将一个 N×N 的矩阵原地旋转 90 度?
- 10 如何找出数组中缺失的数字或重复的数字?
- 11 什么是动态数组?ArrayList 的扩容机制是怎样的?
- 12 什么是环形数组(循环数组)?它有什么用?
- 13 什么是数组原地操作?为什么常用双指针覆盖?
- 14 什么是稀疏数组?它是如何压缩存储的?
- 15 数组的浅拷贝和深拷贝有什么区别?
- 16 数组如何实现栈和队列?为什么队列常用循环数组?
- 17 为什么数组的连续内存和缓存局部性很重要?
- 18 有序数组有哪些特点?适合哪些操作?
- 19 差分数组是什么?为什么适合做区间批量加减?
- 20 计数数组和桶数组有什么区别?什么时候可以用数组代替哈希表?
- 21 前缀和数组是什么?为什么能把区间求和从 O(n) 优化到 O(1)?
- 22 数组切片 Slice 是拷贝还是视图?为什么会影响修改和内存占用?
- 23 数组压缩时稳定和非稳定有什么区别?删除元素时怎么选择策略?
- 24 坐标压缩是什么?为什么能把大值域数组映射到小下标?
- 25 Bitset 和 boolean 数组有什么区别?为什么位图能节省空间?
- 26 定长数组通常分配在栈上还是堆上?数组内存位置会影响什么?
- 27 数组为什么常用 0 作为起始下标?0 基下标有什么好处和坑?
- 28 数组中的哨兵和边界填充有什么用?为什么能减少边界判断?
- 29 AoS 和 SoA 数组布局有什么区别?为什么会影响缓存和批处理性能?
- 30 Gap Buffer 是什么?为什么文本编辑器可以用数组高效插入字符?
没有符合条件的题目。