PHP | Сортировать массив строк в естественном и стандартном порядке

Опубликовано: 17 Января, 2022

Вам дан массив строк. Вы должны отсортировать данный массив как стандартным способом (регистр алфавитов имеет значение), так и естественным способом (регистр алфавита не имеет значения).

Ввод: arr [] = {"Компьютерщики", "для", "компьютерные фанаты"}
Вывод: Стандартная сортировка: Гики для гиков 
         Естественная сортировка: для компьютерных фанатов 

Ввод: arr [] = {"Код", "в", "вундеркинды", "Практика"}
Вывод: Стандартная сортировка: Code Practice at geeks 
         Естественная сортировка: в Code Geeks Practice 

Рекомендуется: сначала попробуйте свой подход в {IDE}, прежде чем переходить к решению.

If you are trying to sort the array of string in a simple manner you can simple create a comparison function for character comparison and sort the given array of strings. But that will differentiate lower case and upper case alphabets. To solve this problem if you are otping to solve this in c/java you have to write your own comparison function which specially take care of cases of alphabets. But if we will opt PHP as our language then we can sort it directly with the help of natcasesort().
natcasesort() : It sort strings regardless of their case. Means ‘a’ & ‘A’ are treated smaller than ‘b’ & ‘B’ in this sorting method.

// declare array
$arr = array ("Hello", "to", "geeks", "for", "GEEks");

// Standard sort
$standard_result = sort($arr);
print_r($standart_result);

// natural sort
$natural_result = natcasesort($arr);
print_r($natural_result);

<?php
// PHP program to sort an array 
// in standard and natural ways.
  
// function to print array
function printArray ($arr)
{
    foreach ($arr as $value) {
        echo "$value ";
    }
}
  
  
// declare array
$arr = array ("Hello", "to", "geeks", "for", "GEEks");
  
// Standard sort
$standard_result = $arr;
sort($standard_result);
echo "Array after Standard sorting: ";
printArray($standard_result);
  
// natural sort
$natural_result = $arr;
natcasesort($natural_result);
echo " Array after Natural sorting: ";
printArray($natural_result);
?>

Выход:

Массив после стандартной сортировки: GEEks Привет гикам 
Массив после естественной сортировки: для компьютерных фанатов GEEks Hello to 

Вниманию читателя! Не прекращайте учиться сейчас. Освойте все важные концепции DSA с помощью самостоятельного курса DSA по приемлемой для студентов цене и будьте готовы к работе в отрасли. Чтобы завершить подготовку от изучения языка к DS Algo и многому другому, см. Полный курс подготовки к собеседованию .

Если вы хотите посещать живые занятия с отраслевыми экспертами, пожалуйста, обращайтесь к Geeks Classes Live и Geeks Classes Live USA.

PHP