Я хочу сортировать значения массива в алфавитном порядке в PHP. Если все значения начинаются с одного символа, их следует сортировать с использованием второго символа и так далее. Игнорировать регистр. Например: before: values[0] = "programming"; values[1] = "Stackoverflow"; values[2] = "question"; values[3] = "answers"; values[4] = "AA Systems"; after: values[0] = "AA Systems"; values[1] = "answers"; […]
Мой язык – это PHP, но алгоритм должен быть достаточно универсальным. У меня есть ассоциативный массив (скажем) рейтингов и количество раз, когда рейтинг был дан. $ratings = array( 1 => 1, 2 => 3, 3 => 6, 4 => 3, 5 => 3 ); Это эквивалентно: [1, 2, 2, 2, 3, 3, 3, 3, 3, […]
У меня есть следующий array котором каждый элемент может (или может не зависеть) от другого: $test = array( 'c' => array( 'depends' => 'b' ), 'a' => array(), 'b' => array( 'depends' => 'a' ), 'd' => array( 'depends' => 'a' ), ); Я хочу переместить (или сделать другой array ) с зависимостями, перемещенными вверху […]
Я пытаюсь найти лучший способ объединить диапазоны дат в одну запись базы данных (элемент массива). Это данные, которые у меня есть: Array ( [0] => Array ( [id] => 18298 [start_date] => 2011-07-09 [end_date] => 2011-10-01 ) [1] => Array ( [id] => 18297 [start_date] => 2011-06-01 [end_date] => 2011-06-30 ) [2] => Array ( […]
У меня есть функция (из предыдущего вопроса, которая осталась без ответа), которая создает массив с n количеством значений. Сумма массива равна $ max. function randomDistinctPartition($n, $max) { $partition= array(); for ($i = 1; $i < $n; $i++) { $maxSingleNumber = $max – $n; $partition[] = $number = rand(1, $maxSingleNumber); $max -= $number; } $partition[] = […]
У меня есть следующий массив, который содержит массивы значений: $array = array( array('1', '2'), array('a', 'b', 'c'), array('x', 'y'), ); Может быть любое количество массивов, и массив может содержать любое количество значений. В настоящее время у меня есть фрагмент кода, который будет генерировать все комбинации, где одно значение берется из каждого массива. например: 1ax, 1ay, […]
ТАК, Проблема Из SQL я получаю массив со строками (плоский массив) – пусть это будет $ rgData = ['foo', 'bar', 'baz', 'bee', 'feo']; Теперь я хочу получить возможные комбинации пар и триплетов этого массива (и, в общем случае, комбинации из 4 элементов e tc). Чтобы быть более конкретным: я имею в виду комбинации в математическом […]
Я хочу сортировать файлы по времени модификации по возрастанию и убыванию. В соответствии с этим ответом Похоже, что лучше всего добиться определения функции обратного вызова сортировки и использования usort / uasort. Однако из-за характера моего приложения я, скорее всего, столкнусь с некоторыми сценариями наихудшего сценария для некоторых алгоритмов сортировки (например, почти обратной последовательности ввода). Поскольку […]
Каков наилучший алгоритм для получения всех возможных комбинаций строк из заданного массива с минимальным и максимальным значением длины. Примечание. Это добавляет сложности, поскольку значение является переменной, в отличие от вопросов, с которыми они связаны. Например: $letters = array('a','b','c','1','2','3'); $min_length = 1; $max_length = 4; a b c 1 2 3 . . . aaaa a123 […]
Я видел этот алгоритм, который будет принимать числа или слова и находить все возможные комбинации И я использую его, но он НЕ возвращает все «реальные» комбинации. PHP: <?php require_once 'Math/Combinatorics.php'; $words = array('cat', 'dog', 'fish'); $combinatorics = new Math_Combinatorics; foreach($combinatorics->permutations($words, 2) as $p) { echo join(' ', $p), "\n"; } ?> И он возвращает: cat […]