Questions tagged «memory-limit»

30
生成一个整数,该整数不在给定的40亿个整数中
我得到了这个面试问题: 给定一个具有40亿个整数的输入文件,请提供一种算法来生成文件中不包含的整数。假设您有1 GB的内存。如果只有10 MB的内存,请执行后续操作。 我的分析: 文件大小为4×10 9 ×4字节= 16 GB。 我们可以进行外部排序,从而让我们知道整数的范围。 我的问题是在已排序的大整数集中检测丢失的整数的最佳方法是什么? 我的理解(阅读所有答案之后): 假设我们正在谈论32位整数,那么有2 32 = 4 * 10 9个不同的整数。 情况1:我们有1 GB = 1 * 10 9 * 8位= 80亿位内存。 解: 如果我们用一位代表一个不同的整数,那就足够了。我们不需要排序。 实现方式: int radix = 8; byte[] bitfield = new byte[0xffffffff/radix]; void F() throws FileNotFoundException{ Scanner in = new …

27
致命错误:允许的134217728字节的内存大小已用尽(CodeIgniter + XML-RPC)
我有一堆客户端销售点(POS)系统,这些系统定期将新的销售数据发送到一个集中式数据库,该数据库将数据存储到一个大型数据库中以生成报告。 客户端POS基于PHPPOS,我已经实现了一个模块,该模块使用标准XML-RPC库将销售数据发送到服务。该服务器系统基于CodeIgniter构建,并为Web服务组件使用XML-RPC和XML-RPCS库。每当我发送大量销售数据时(从sales表中少到50行,而来自sales_items中与销售中每个项目有关的单独行)都会出现以下错误: Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 54 bytes) 中的默认值为128M php.ini,但我认为这是一个很大的数字。实际上,我什至尝试将此值设置为1024M,而这样做所花费的时间更长。 至于我采取的步骤,我尝试禁用服务器端的所有处理,并操纵它以返回固定响应,而不管输入如何。但是,我认为问题在于实际发送数据。我什至尝试禁用PHP的最大脚本执行时间,但仍然出错。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.