abstract:"高水線"算法:大水過后,最后一波浪消退時(shí),高水線會(huì)標(biāo)示出所見過的最高水位。下面看下"高水線"算法在Perl中的運(yùn)用。#! /usr/bin/perl; use utf8; sub max { my($max_so_far) = shift
"高水線"算法:大水過后,最后一波浪消退時(shí),高水線會(huì)標(biāo)示出所見過的最高水位。
下面看下"高水線"算法在Perl中的運(yùn)用。
#! /usr/bin/perl; use utf8; sub max { my($max_so_far) = shift @_; #數(shù)組中第一個(gè)值,暫時(shí)當(dāng)成最大值。 foreach(@_){ #遍歷數(shù)組@_ if($_>$max_so_far){ #看其它元素是否有比$max_so_far大的值。 $max_so_far = $_;} #如果有話,更新最大值變量 } $max_so_far; } my $_MaxData = &max(2,3,8,5,10); print $_MaxData;
第一行對(duì)數(shù)組@_進(jìn)行shift操作,將一個(gè)元素2放到最大值$max_so_far變量中,@_中剩下的元素為(3,8,5,10),然后用foreach循環(huán)遍歷數(shù)組,新數(shù)組中的第一個(gè)元素3比2大,又被移到$max_so_far變量中,依次類推,最后10,就是數(shù)組中的最大元素。
更多關(guān)于Perl實(shí)現(xiàn)高水線算法請(qǐng)關(guān)注PHP中文網(wǎng)(ipnx.cn)其他文章!