9.2.4. Сортировка матриц

Часто бывает нужно переставить элементы матрицы или вектора, расположив их в определенной строке или столбце в порядке возрастания или убывания. Для этого имеются несколько встроенных функций, которые позволяют гибко управлять сортировкой матриц:

  • sort(v) — сортировка элементов вектора в порядке возрастания (листинг 9.27);
  • csort(A,i) — сортировка строк матрицы выстраиванием элементов 1-го столбца в порядке возрастания (листинг 9.28);
  • rsort(A,i) — сортировка столбцов матрицы выстраиванием элементов i-й строки в порядке возрастания (листинг 9.29);
  • reverse (v) — перестановка элементов вектора в обратном порядке (листинг 9.27);
    • v — вектор;
    • А — матрица;
    • i — индекс строки или столбца.

Если элементы матриц или векторов комплексные, то сортировка ведется по действительной части, а мнимая часть игнорируется.

Листинг 9.27. Сортировка векторов

Листинг 9.28. Сортировка матриц по столбцу

Листинг 9.29. Сортировка матриц по строке (матрица А из листинга 9.28)