小编mar*_*cog的帖子

识别Perl中的空字符串

对此可能有一个简单的解决方案,但我无法弄清楚.我期待:

  • 将CSV文件放入数组中
  • 循环遍历数组并将字段拆分为变量
  • 如果数组字段为空,则将变量设置为"N/A"

注意:它只是设置$variable为" N/A",我无法工作.

例如:

foreach $var (@list) {

($name,$date,$size, etc...)=split(/,\"/,$var);

}
Run Code Online (Sandbox Code Playgroud)

如果数组中的字段为空,我将如何设置$date为" N/A"?

所以产生:

$name = Jim
$date = N/A
$size = small
Run Code Online (Sandbox Code Playgroud)

我希望这很有意义并且易于修复.-谢谢

string perl

14
推荐指数
2
解决办法
5万
查看次数

在Python中读取巨大的文件

我有一个384MB的文本文件,有50​​00万行.每行包含2个以空格分隔的整数:键和值.该文件按键排序.我需要一种有效的方法来查找Python中大约200个键列表的值.

我目前的方法包括在下面.这需要30秒.必须有更高效的Python foo才能将其降低到最多几秒钟的合理效率.

# list contains a sorted list of the keys we need to lookup
# there is a sentinel at the end of list to simplify the code
# we use pointer to iterate through the list of keys
for line in fin:
  line = map(int, line.split())
  while line[0] == list[pointer].key:
    list[pointer].value = line[1]
    pointer += 1
  while line[0] > list[pointer].key:
    pointer += 1
  if pointer >= len(list) - 1:
    break # end of list; -1 is due …
Run Code Online (Sandbox Code Playgroud)

python performance file-io large-files

13
推荐指数
2
解决办法
9695
查看次数

有效地确定多项式在区间[0,T]中是否有根

我有非平凡度(4+)的多项式,需要鲁棒有效地确定它们是否在区间[0,T]中有根.根的确切位置或数量与我无关,我只需要知道是否至少有一个.

现在我正在使用区间运算作为快速检查,看看我是否可以证明没有根可以存在.如果我不能,我正在使用Jenkins-Traub来解决所有多项式根.这显然是低效的,因为它检查所有真正的根并找到它们的确切位置,这些信息我最终不需要.

我应该使用标准算法吗?如果没有,在完成所有根的完整Jenkins-Traub求解之前,我还能做任何其他有效的检查吗?

例如,我可以做的一个优化是检查我的多项式f(t)在0和T处是否具有相同的符号.如果不是,则在该区间中显然存在根.如果是这样,我可以求解f'(t)的根,并在区间[0,T]中的f'的所有根处求f.当且仅当所有这些评估具有与f(0)和f(T)相同的符号时,f(t)在该区间中没有根.这减少了我必须根找到的多项式的次数.不是一个巨大的优化,但也许比没有好.

math polynomial-math numerical-methods

13
推荐指数
1
解决办法
5301
查看次数

Google如何通过safesearch识别成人内容?

我正在创建一个搜索引擎(用于学习),我想知道Google如何使用Safesearch(http://en.wikipedia.org/wiki/Safesearch)识别成人内容和图像.

程序语言并不重要,我只想知道通用程序语言的方法.

algorithm image-processing

13
推荐指数
1
解决办法
6497
查看次数

使用bash从给定路径中删除不必要的斜杠

如何摆脱给定路径中不必要的斜线?

例:

p="/foo//////bar///hello/////world"
Run Code Online (Sandbox Code Playgroud)

我想要:

p="/foo/bar/hello/world"
Run Code Online (Sandbox Code Playgroud)

bash path

13
推荐指数
4
解决办法
1万
查看次数

找到两个相同大小数组的元素之间的唯一映射

我最近在接受采访时被问到这个问题:

每个都有两个大小为'n'的数组.一个阵列有螺母,另一个有螺栓.每个螺母恰好适合一个螺栓,反之亦然.当您将螺母与螺栓进行比较时,您会得到3个结果中的一个:紧,松,合适.

你如何有效地找到独特的映射?

无法在任何一组上进行排序.你永远不知道b1是否小于b2或
n1是否小于n2.其中n1,n2是螺母,b1,b2是螺栓.你唯一能做的就是将螺母与螺栓进行比较并得到一个结果:紧,合适,松动.

algorithm

12
推荐指数
1
解决办法
768
查看次数

12
推荐指数
3
解决办法
6202
查看次数

基数排序,对浮点数据进行排序

基数排序是否能够对浮动数据进行排序,例如0.5,0.9,1.02等?

algorithm radix-sort

12
推荐指数
2
解决办法
6856
查看次数

安装python模块时出错

我试图安装标准的python模块,python setup.py install但我得到以下错误.我是python的新手,但我以前能够以这种方式安装其他模块.我觉得这个模块setuptools不是我应该从我的python安装中分离的东西.我需要在特定的目录中吗?

Error:
Traceback (most recent call last):
  File "setup.py", line 3 in <module>
    from setuptools import setup, find_packages
ImportError: No module named setuptools
Run Code Online (Sandbox Code Playgroud)

python installation setuptools windows-7

12
推荐指数
1
解决办法
2万
查看次数

如何在Geany中编译/构建/执行C++项目?

我真的不认为这会很困难.Geany显然有能力创建项目,向项目添加文件,编译单个文件,但是即使在谷歌搜索之后,我也找不到如何构建和执行项目的清晰描述......这很烦人因为我真的很烦就像Geany的简洁和干净,整洁的工作空间一样,但这可能是一个交易破坏者.

c++ linux geany

11
推荐指数
1
解决办法
5万
查看次数