Показать сообщение отдельно
Старый 04.07.2005, 00:32
-MS- вне форума Посмотреть профиль Отправить личное сообщение для -MS- Найти все сообщения от -MS-
  № 8  
-MS-
 
Аватар для -MS-

Регистрация: Jun 2005
Сообщений: 367
ну так на вскидку, без проверки работоспособности...
PHP код:
function sort($mas,$ii,$jj,$k//mas - входной массив, ixj - размерность, k - столбец по которому сортируем
{
stat=0;
for(
$i=0;$i<=$ii;$i++){
$tmp_m[$i]=$mas[$i][$k]; //заполняем промежуточный массив значениями столбца по которому будем сортировать
$tmp_i[$i]=$i//промежуточный массив с индексами по строкам
}
//сортируем промежуточный массив по возрастанию, соответственно изменится массив индексов
for($i=0;$i<=$ii;$i++){
$min=$tmp_m[$i];
for(
$j=$i;$j<=$ii;$j++){
if(
$min<$tmp_m[$j]){
$tmp_m[$i]=$tmp_m[$j];   //тут у нас сортируется сам массив, обмен 
$min=$tmp_m[$j];            //значениями элементов массива
$tmp_m[$j]=$tmp;           //
$tmp_i[$i]=$j;       //а тут идексы выстраиваются
$tmp_i[$j]=$i;       //
}
}
}
//получили отсортированный массив с индексами по возрастанию
//теперь организуем выходной массив
for($i=0;$i<=$ii;$i++){
$tmp=tmp_i[$i];
for(
$j=0;$j<=$jj;$j++){
$out[$i][$j]=$mas[$tmp][$j];
}
}
return 
$out;

ну что то типа этого... за работоспособность не отвечаю не проверял
просто предложил возможную реализацию