задачка 1.
Дан текстовый файл. Необходимо выделить из него 50 наиболее часто повторяющихся строк.
open FT, $ARGV[0] || die($ARGV[0]." ".$!); while (<FT>){ if ($_=~m/\S/){ # заполнение хеша, ключ строка, значение кол. повторений строки в тексте $hash{$_}++; } } close FT; ### заполняем массив значениями из хеша, отсортрованными по убыванию значения. @m[0..49]=map{$hash{$_}." ".$_} sort {$hash{$b} <=> $hash{$a}} keys %hash; print @m;
Комментарии закрыты.