这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录 前一修订版 后一修订版 | 前一修订版 | ||
2020-2021:teams:namespace:sereinin:知识点 [2020/05/15 22:16] serein |
— (当前版本) | ||
---|---|---|---|
行 1: | 行 1: | ||
- | ====== 常见编程技巧 ====== | ||
- | ==== 内存池 ==== | ||
- | |||
- | 当我们需要动态分配内存的时候,频繁使用 **new/malloc** 会占用大量的时间和空间,甚至生成大量的内存碎片从而降低程序的性能,可能会使原本正确的程序 **TLE/MLE**。 | ||
- | |||
- | 这时候我们就需要使用到「内存池」这种技巧:在真正使用内存之前,先申请分配一定大小的内存作为备用,当需要动态分配时则直接从备用内存中分配一块即可。 | ||
- | |||
- | 当然在大多数 **OI** 题当中,我们可以预先算出需要使用到的最大内存并一次性申请分配。 | ||
- | |||
- | 如申请动态分配 位有符号整数数组的代码: |