Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Сортировка таблицы по столбцу 
:(
    Опции темы
altarasjuk
Дата 19.6.2003, 18:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 331
Регистрация: 7.5.2003
Где: Харьков

Репутация: нет
Всего: 1



Всем привет smile.gif
Подскажите, плиз, есть таблица(2-х мерный массив) и надо строки этого массива отсортировать по какому-либо столбцу. т.е. есть, допустим, фамилия и имя, и это надо отсортировать либо по фамилии, либо по имени, но чтобы учитывались данные других столбцов. Нпример было:

Петров Федя
Иванов Иван
Иванов Абрагим

а стало

Иванов Абрагим
Иванов Иван
Петров Федя

Заранее спасибо. smile.gif


--------------------
Правда - изобретение маньяков: колет глаза и режет уши.
PM MAIL ICQ   Вверх
podval
Дата 20.6.2003, 18:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Где я? Кто я?
****


Профиль
Группа: Экс. модератор
Сообщений: 3094
Регистрация: 25.3.2002
Где: СПб

Репутация: 18
Всего: 62



altarasjuk
Эта таблица в базе данных или нет?
PM WWW ICQ   Вверх
altarasjuk
Дата 20.6.2003, 19:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 331
Регистрация: 7.5.2003
Где: Харьков

Репутация: нет
Всего: 1



ну как бы в базе данных, но через sql сортировка - это долго (10000 записей и более) т.к. этот процесс для таблицы не единоразовый.


--------------------
Правда - изобретение маньяков: колет глаза и режет уши.
PM MAIL ICQ   Вверх
Гость_Black_Joker
Дата 15.7.2003, 11:50 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Пишешь любую сортировку, только сортируешь нужный столбец.
а остальные записи просто "тянешь" за собой.
  Вверх
altarasjuk
Дата 15.7.2003, 12:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 331
Регистрация: 7.5.2003
Где: Харьков

Репутация: нет
Всего: 1



дык а как чтобы был вторичный ключ и при этом сохранялась скорость. просто по одному столбцу - у меня реализована быстрая сортировка, а вот надо там учесть данные других столюцов, но опять же чтобы по скорости это не стало как сортировка пузырьком biggrin.gif


--------------------
Правда - изобретение маньяков: колет глаза и режет уши.
PM MAIL ICQ   Вверх
kor
Дата 16.7.2003, 07:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 12.7.2003

Репутация: нет
Всего: нет



Грубо говоря я тебя понял так:
1) У тебя есть иерархия критериев сортировки...
2) Каждый критерий определяет сортировку по определенному столбцу.
3) Ты применяешь критерии последовательно и сортируешь в итоге всю таблицу....

Ответ:
1) Если у тебя массив мало меняется между сортирвками то попробуй туже сортировку пузырьком
(совсем неплохо или другую сортировку учитывающую частичную упорядоченность массива конечно
есть и лучше) сm (algolist.manuals.ru)

2) Если массив сильно меняется то построй единый критерий сортировки... собирая его из критериев
для отдельтных столбцов. и потом по нему либо быструю либо поразрядную сортировку...
(что вобще иногда бывает супер)


PM MAIL ICQ   Вверх
altarasjuk
Дата 16.7.2003, 11:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 331
Регистрация: 7.5.2003
Где: Харьков

Репутация: нет
Всего: 1



Цитата
) Если массив сильно меняется то построй единый критерий сортировки... собирая его из критериев
для отдельтных столбцов. и потом по нему либо быструю либо поразрядную сортировку...
Спасибо, а это действительно мысль! Создать дополнительный столбец, который будет представлять собой склееные в соответствии с критериями дрегие столбцы, и авось и тормозить не будет. Так что спасибо за мысль. (Раньше я для каждой проверки) biggrin.gif


--------------------
Правда - изобретение маньяков: колет глаза и режет уши.
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Алгоритмы"

maxim1000

Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Алгоритмы | Следующая тема »


 




[ Время генерации скрипта: 0.0603 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.