从文件中获取亚线性时间的输入
Taking Input in sub-linear time from a file
我有一个节点列表(字符串,值)。我可以在亚线性时间内扫描它吗?此外,我需要处理它,以便可以在亚线性时间内完成对字符串的每个搜索查询。如果次线性意味着小于 O(n) 或者它可以是 O(n),任何人都可以更具体地说明吗?我正在使用CPP
扫描通常意味着"读取每个项目(以某些通常是预定义的顺序)"。如果读取每个项目,则至少执行线性数量的读取下一个项目操作。我们假设操作需要一些时间,通常是恒定的,有时等于或大于某个最小时间,因此执行扫描需要一些时间,至少与处理的项目数(列表长度)成正比。
所以答案是否定的,你不能在亚线性时间内做到这一点——除非你的机器可以动态复制自己并将数据分成每个后代机器处理的部分。即便如此,尽管数据量很大,拆分也必须在恒定的时间内完成,否则拆分开销很容易吞噬所有节省。
相关文章:
- 如何使用Chrono或ctime libaray输入设置的开始和结束时间
- 在给定相同的输入的情况下,某些代码怎么可能花费更多时间来运行,这似乎只是因为它处于循环中?
- SVM 训练时间是否取决于输入数据的内容?
- variadic函数模板:基于n编译时值在运行时间自动n输入
- 发送输入鼠标时间
- 在输入结构对象的输入过程中运行时间错误
- 使用结构显示军事时间,并将一秒钟的时间添加到用户输入(C )中
- 如何在最短的时间内处理大文件(c ++,openmp,输入文件:FASTQ/FASTA)
- 避免在字符阵列中长时间输入
- 以C++分隔用户输入的时间
- 查找我的算法的运行时间,以查找输入在输入方面是否是素数
- 如何读取时间输入并格式化输出
- 我们可以在两个输入之间获得时间吗?
- 在运行时间内用户输入任何内容时,如何停止计时器
- 从文件中获取亚线性时间的输入
- 应用程序的响应时间与给定时间段内输入触发器的数量不经意地相关
- 两个用户输入时间 C++ 的差异
- 如何在C++中使用计时器在给定时间内强制输入
- 如何使用 getline 和字符串流来解析格式化的日期和时间输入
- 将时间输入转换为浮点数以启用C++中的数学函数