"High Waterline" algorithm: After the flood, when the last wave fades, the high waterline will indicate the highest water level seen.
Let’s take a look at the application of the “high waterline” algorithm in Perl.
#! /usr/bin/perl; use utf8; sub max { my($max_so_far) = shift @_; #The first value in the array is temporarily regarded as the maximum value. foreach(@_){ #Transfer the array @_ if($_>$max_so_far){ #See if other elements have a larger value than $max_so_far. $max_so_far = $_;} #If there is any, update the maximum value variable } $max_so_far; } my $_MaxData = &max(2,3,8,5,10); print $_MaxData;
The first line performs shift operation on the array @_, puts an element 2 into the maximum value $max_so_far variable, the remaining elements in @_ are (3,8,5,10), and then loops through the array with foreach. The first element in the new array is 3 to 2, and is moved to the $max_so_far variable, and so on. The last 10 is the largest element in the array.