Сложность: easy
Учитывая массив строк words, верните наименьшую строку, которая содержит каждую строку в words в качестве подстроки. Если существует несколько допустимых строк наименьшей длины, верните любую из них. Вы можете предположить, что ни одна строка в words не является подстрокой другой строки в words.
Пример:
Input: strs = ["cba","daf","ghi"]
Output: 1
👨💻 Алгоритм:
1⃣Инициализировать переменную count для отслеживания количества столбцов, которые нужно удалить.
2⃣Пройти по каждому столбцу от 0 до длины строки.
Для каждого столбца проверить, отсортированы ли символы лексикографически.
Если столбец не отсортирован, увеличить count.
3⃣Вернуть count.
😎 Решение:
function minDeletionSize($strs) {
$count = 0;
$rows = count($strs);
$cols = strlen($strs[0]);
for ($col = 0; $col < $cols; $col++) {
for ($row = 1; $row < $rows; $row++) {
if ($strs[$row][$col] < $strs[$row - 1][$col]) {
$count++;
break;
}
}
}
return $count;
}Ставь 👍 и забирай 📚 Базу знаний