【发布时间】:2010-05-18 19:03:31
【问题描述】:
我正在尝试找出一种方法来检查数组中是否存在值,而无需遍历数组。
我正在读取一个参数文件。我有一长串不想处理的参数。我将这些不需要的参数放在数组@badparams中。
我想读取一个新参数,如果它在@badparams 中不存在,则处理它。如果@badparams中确实存在,则进入下一个阅读。
【问题讨论】:
-
为了记录,答案确实取决于您的情况。听起来您想进行重复查找,因此使用 jkramer 建议的哈希是好的。如果您只想进行一次查找,则不妨进行迭代。 (并且在某些情况下,您可能想要二进制搜索而不是使用哈希!)
-
为了记录(这可能完全不适用于您的情况),识别“好的价值观”并忽略其余部分而不是试图清除已知的“坏价值观”通常是一个更好的主意。您需要问的问题是,是否可能存在一些您还不知道的不良价值观。
标签: perl arrays comparison