小编ana*_*ana的帖子

关于'grep -f':匹配模式与文件

我正在使用该grep -f函数从文件中提取与特定模式匹配的行.假设我的模式文件pattern.txt如下所示.

1
2
3
4
5
Run Code Online (Sandbox Code Playgroud)

我匹配此模式的文件是file.txt,

1::anv
2::tyr
3::yui
4::fng
5::gdg
6::ere
7::rer
8::3rr
9::gty
Run Code Online (Sandbox Code Playgroud)

现在,当我执行grep -f pattern.txt file.txt时,我得到了这个 - >

1::anv
2::tyr
3::yui
4::fng
5::gdg
8::3rr
Run Code Online (Sandbox Code Playgroud)

上面输出中的最后一行是导致我的问题.如何修改此grep命令以获取输出(显示正确的对应关系),如下所示?

1::anv
2::tyr
3::yui
4::fng
5::gdg
Run Code Online (Sandbox Code Playgroud)

grep

8
推荐指数
2
解决办法
3万
查看次数

可以在少于n-1次连续乘法中计算2 ^ n吗?

我有一个问题涉及在少于n-1次连续乘法中给定任何n计算2 ^ n的可能性.通过避免执行n-1次乘法的任务,我可以利用什么来实现相同操作的最佳策略?这可以用较少的乘法来完成吗?如果是,那怎么样?

-谢谢

algorithm complexity-theory

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

删除perl哈希中的冗余

我有一个看起来像这样的文件.

a_8_3_1-b_30_5_6-c_6_2_1- + b_30_5_6-
a_123_1_1- + d_144_1_7-
a_123_1_1- + c_1_4_1-
b_50_1_1- + d_144_1_7-
a_123_1_1- + c_2_1_2-
c_1_4_1- + a_123_1_1-
a_123_1_1- + a_93_1_2-
d_144_1_7- + a_123_1_1-
c_2_1_2- + a_123_1_1-
a_123_1_1- + c_2_1_2-
Run Code Online (Sandbox Code Playgroud)

它有2列,用"+"符号分隔.我需要计算此文件中存在的唯一组合的数量.

如图所示,形成组合,例如在a_123_1_1-和c_2_1_2-之间,以及在c_2_1_2- + a_123_1_1-之间.现在我需要数不了.在这样的文件中出现这种对的情况,我知道这种组合(不论它们的相对顺序)发生了3次.

与a_123_1_1-和d_144_1_7-类似.它们以两种组合出现.每个组合出现一次.因此,累计计数= 2

我现在已经尝试将所有这些行放在哈希中(即每一行都是一个键,它的出现将是它的相应值)并打印出no.在PERL中使用map函数的出现次数.

但是,我如何包含这样的冗余并在各个元素之间解决这个问题?

请帮忙.

perl

-1
推荐指数
1
解决办法
160
查看次数

标签 统计

algorithm ×1

complexity-theory ×1

grep ×1

perl ×1