random-access相关内容

从文本文件中有效选择概率均匀的C中的随机行?

这实际上是假设我们有一个非常大的文本文件,其中包含很多行. 我们需要从文件中随机选择一行,并且概率均匀,但是存在一些限制: 因为这是一个软实时应用程序,所以我们无法遍历整个文件.选择应该花费一定的时间. 由于内存限制,无法缓存文件. 由于允许在运行时更改文件,因此不能将文件的长度假定为常量. 我的第一个想法是使用lstat()调用来获取总文件大小(以字节为单位).然后,可以使 ..
发布时间:2020-07-04 01:58:04 其他开发

random.choice()在同一秒返回相同的值,如何避免它呢?

我一直在寻找有关如何在python中生成随机数的类似问题.例如:类似问题-但是我没有出现randomfunction返回的问题每次都有相同的值. 我的随机数发生器工作正常,问题是在我认为不希望的同一秒调用函数时,它返回相同的值. 我的代码如下 def getRandomID(): token = '' letters = "abcdefghiklmnopqrstu ..
发布时间:2020-07-04 00:52:45 Python

Postgres中的快速随机行选择

我在postgres中有一个表,其中包含数百万行.我已经检查了互联网,发现以下内容 SELECT myid FROM mytable ORDER BY RANDOM() LIMIT 1; 它可以工作,但是速度真的很慢...还有另一种方法可以进行该查询,还是直接选择随机行而不读取所有表的方法?顺便说一句,"myid"是一个整数,但它可以是一个空字段. 谢谢 解决方案 您可能想 ..
发布时间:2020-05-29 19:42:49 其他开发

允许通过迭代和从子集中随机选择进行更改的数据结构(C ++)

给定一个固定大小的对象数组A,假设这些对象的较小子集满足特定条件B.我想以大约相等的频率完成三个任务: 我希望能够在按索引访问A中的对象时随时更改当前不符合条件B的对象以符合条件B. 我希望能够通过索引访问A中的对象时,将当前满足条件B的对象更改为不再满足条件B. 我还希望能够仅从那些符合条件B的对象中选择一个随机对象. 所有任务应该能够在恒定时间内或尽可能接近恒定时间完成,不依赖 ..
发布时间:2020-05-28 23:19:56 C/C++开发

使用指针作为容器迭代器是否违反标准

Angew发表了评论使用原始指针作为迭代器类型的vector很好.那有点让我感到困惑. 我开始研究它,发现对vector迭代器的要求只是它们是,其中明确指出了指针符合条件: 指向数组元素的指针满足所有要求 是编译器甚至出于调试目的甚至向vector提供迭代器的唯一原因,还是实际上我错过了vector的要求? 解决方案 §24.2.1 由于迭代器是指针的抽象,因此 ..
发布时间:2020-05-28 21:37:10 C/C++开发

下载时如何部分显示PDF文件?

根据PDF 1.7规范,第3.4节( 前面的部分描述了单个对象的语法.这 本节介绍了如何在PDF文件中组织对象以提高效率 随机访问和增量更新.最初是规范的PDF文件 由四个元素组成(见图3.2): 一个单行标题,用于标识要指定的PDF规范的版本 文件符合 主体,该主体包含构成文档中包含的文档的对象. 文件 包含有关间接信息的交叉引用表 文件中的对象 一个预告片,提供了交叉 ..
发布时间:2020-05-25 04:09:18 其他开发

从python中具有固定数量元素的集合中进行非常快速的采样

我需要从固定大小的集合中随机抽样一个数字,进行一些计算,然后将新数字放回集合中. (需要的样本数量非常大) 我试图将数字存储在列表中,并使用random.choice()选择一个元素,将其删除,然后附加新元素.但这太慢了! 我正在考虑将数字存储在numpy数组中,对索引列表进行采样,并对每个索引执行计算. 有没有更快的方法来完成此过程? 解决方案 Python列表在内部以 ..
发布时间:2020-05-18 22:18:01 Python

java中的随机访问文件

我有以下字段: 库存控制(16字节记录) 产品ID代码(int - 4字节) 库存数量(整数 - 4字节) 价格(双 - 8字节) 如何使用以下方法创建固定长度的随机访问文件以上长度?我在网上尝试了一些例子,但是当我尝试访问它们时,我得到了一个EOF异常或随机地址值。 我尝试了一些更多的例子而无法理解概念非常好。我正在尝试一个项目,并将尝试探索更多。 这是一些示例 ..
发布时间:2019-01-02 22:50:42 Java开发

使用RandomAccessFile到达文件中的特定行

是否可以通过RandomAccessFile将光标定位到文件中特定行的开头? 例如我想在文件中第111行的char 10到20之间更改String。该文件具有固定长度记录。 是否可以使用RandomAccessFile将光标直接定位到第111行的开头? 更新: 我使用了以下代码。但是,它返回null。 行长度为200个字符(如果我没有错,则为200字节) 文件f ..
发布时间:2018-12-17 10:58:45 Java开发

Java中的文件流

我目前正在使用 JOGL (Java OpenGL绑定)开发3D图形应用程序。简而言之,我有一个巨大的横向二进制文件。由于它的大小,我必须在运行时流式传输地形块。因此,我们明确地看到随机访问问题。我已经完成了第一个(和脏:))实现(也许它是多线程的),我正在使用一个愚蠢的方法......这是它的初始化: dataInputStream = new DataInputStream(new B ..
发布时间:2018-12-06 14:13:53 Java开发

Java:从具有缓冲输入的随机访问文件中读取字符串

我以前从未接触过Java IO API的经验,现在我真的很沮丧。我发现很难相信它有多奇怪和复杂,做一个简单的任务有多难。 我的任务:我有2个位置(起始字节,结束字节), pos1 和 pos2 。我需要读取这两个字节之间的行(包括起始字节,不包括结尾字节)并将它们用作UTF8字符串对象。 例如,在大多数脚本中语言它将是一个非常简单的1-2-3-liner(在Ruby中,但它对于Pyth ..
发布时间:2018-12-06 13:56:28 Java开发

使用StAX为XML创建索引以便快速访问

有没有办法使用StAX和JAX-B创建索引,然后快速访问XML文件? 我有一个大的XML文件,我需要在其中找到信息。这用于桌面应用程序,因此它应该在RAM很少的系统上运行。 所以我的想法是这样的:创建一个索引然后快速访问大文件中的数据。 I不能只拆分文件,因为它是一个我希望不加改变的官方联邦数据库。 使用XMLStreamReader我可以快速找到一些元素,然后使用JAXB ..
发布时间:2018-11-28 00:04:25 Java开发

C ++随机访问迭代器,用于按需加载元素的容器

我目前正在开发一个小项目,需要从文件加载消息。消息按顺序存储在文件中,文件可能变得很大,因此将整个文件内容加载到内存中是不值得的。 因此我们决定实现 FileReader 类能够快速移动到文件中的特定元素并根据请求加载它们。常用的内容如下: SpecificMessage m; FileReader fr; fr.open(“file.bin”); fr.moveTo(1 ..
发布时间:2018-11-15 22:56:48 C/C++开发

C ++嵌套迭代器

是否可以使用如下的嵌套迭代器? for(vector :: iterator i = list.begin(); i!= list.end(); ++ i){ for(vector :: iterator j = i; j!= list.end(); ++ j) { ... } } 请注意 j 从 i 开始,而不是 list.begin ..
发布时间:2018-11-15 22:32:06 C/C++开发

在写入文件时读取文件

我必须读取tomcat日志文件,过了一段时间(例如:一小时)我将再次读取该文件(仅用于新添加的内容),所以我创建了RandomAccessFile来记录我完成的最后一个位置,并使用BufferedReader.readLine()方法。 然而,我发现有时我无法读取整个文件行。 例如,tomcat要写下面的内容(仅举例): 192.168.0.0 localhost /index. ..
发布时间:2018-08-24 17:31:42 Java开发

Python随机访问文件

有没有一个Python文件类型访问随机行而不遍历整个文件?我需要在一个大文件中搜索,将整个内容读入内存是不可能的。 任何类型或方法将不胜感激。 $ b 解决方案 这似乎只是这样的事情 mmap 是专为。 mmap 对象创建一个类似于字符串的文件接口: >>> f = open(“bonnie.txt”,“wb”) >>> f.write(“我的邦妮躺在海洋上”) ..
发布时间:2017-11-04 21:00:55 Python

缓冲的RandomAccessFile java

对于随机访问文件,RandomAccessFile非常慢。你经常阅读关于实现一个缓冲层,但代码这样做是不可能在网上找到。所以我的问题是:你们谁知道这个类的任何开源实现共享一个指针或共享您自己的实现? 如果这个问题会成为一个关于这个问题的有用的链接和代码的集合将是很好的,我敢肯定,这个链接和代码被许多人共享,并且从来没有被SUN妥善处理过。 请不要引用MemoryMapping,因为文件 ..
发布时间:2017-11-04 20:54:27 Java开发

将Quick BASIC转换为VB.Net - 随机访问文件

我试图将旧的Quick BASIC程序转换为VB.Net。似乎没有任何直接替换旧的文件语句。建立一个数据库似乎对我的简单需求矫枉过正。 如何在VB.Net中执行以下操作? OPEN“test.dat”FOR RANDOM AS#1 LEN = 20 FIELD#1,10 AS $,10 AS b $ LSET a $ = “One” LSET b $ =“Two” PUT# ..
发布时间:2017-11-03 19:15:47 其他开发