|
|
|||||||||||
Сортировка словаря методом реконструкции13.04.2014, 01:43. Показов 12367. Ответов 47
Посмотрите, пожалуйста, может существует более оптимальный алгоритм.
Здесь я создаю 2 массива: с ключами и со значениями. В алгоритме сортировки вставками я переставляю одновременно оба массива. Затем создаю виртуальный словарь: последовательно читаю, в каком порядке должны идти ключи и заполняю его "ключ + значение исходного словаря".
0
|
|||||||||||
| 13.04.2014, 01:43 | |
|
Ответы с готовыми решениями:
47
Составить алгоритм и программу определения самых старых зданий, подлежащих реконструкции Сортировка словаря Сортировка словаря |
|
|
|||||||||||
| 14.04.2014, 11:35 | |||||||||||
|
Упс... забыл сменить тип...
счаз всё должно заработать ... Кликните здесь для просмотра всего текста
теперь это можно запустить где угодно и на пустой форме ![]() ... тоесть в 23 строчке вполне можно изменить код на этот для всех вариантов !
0
|
|||||||||||
|
|
|
| 14.04.2014, 12:02 | |
|
И тишина ...
Вот архив ! кому лень проект создавать извлекать не обязательно только 2 раза нажать на форму Sort !
1
|
|
|
Модератор
|
||||||
| 14.04.2014, 18:10 | ||||||
Сообщение было отмечено The trick как решение
РешениеНе по теме: Наконец-то выспался :D Вот еще быстрее раз в 7-8.
.
5
|
||||||
|
|
|
| 14.04.2014, 18:24 | |
|
(Not Not ppCurrent) ...
тяжело для понимания
0
|
|
|
|
||
| 14.04.2014, 18:38 | ||
|
Что-ж молодец ...
проси медаль ![]() Добавлено через 5 минут
0
|
||
|
Модератор
|
|||||||
| 14.04.2014, 18:47 | |||||||
|
Dragokas работает ли данный код у тебя?
Добавлено через 5 минут Вот в цикле
Not Not ppCurrent можно заменить ArrPtr(ppCurrent)
2
|
|||||||
|
Модератор
|
||
| 15.04.2014, 12:39 | ||
|
0
|
||
|
Модератор
|
|
| 16.04.2014, 01:11 | |
|
Кстати, кому интересно, эти элементы являются объектами поддерживающими интерфейс IDictionary (первый элемент структуры указывал на интерфейс IDictionary я его расшифровал), описание не нашел пока, но чувствую там много полезных фич еще будет на уровне элементов.
1
|
|
|
1 / 1 / 0
Регистрация: 26.03.2016
Сообщений: 42
|
|
| 01.10.2017, 16:43 | |
|
А как пользоваться? при попытке открыть DicViewer.exe звук ошибки, окна ошибки нет. При попытке добавить DicViewer.exe, как надстройку ничего не происходит...
0
|
|
|
39 / 39 / 8
Регистрация: 15.08.2014
Сообщений: 634
|
||||||
| 02.10.2017, 21:59 | ||||||
|
может не в тему..
Но когда то очень здорово помогли... Тогда задача правда была несколько инная...удаление дублей из списка более 100 000 тыс элементов... Работает очень быстро
0
|
||||||
| 25.11.2023, 16:27 | ||||||
|
Процедура DictPtrStrKeys (vba/vb6-совместимая) предназначена для получения массива указателей строковых кючей. Можно использовать, если заранее изветно, что все ключи строковые. Также можно получить массив строковых итемов ели заменить строку pKeys(i) = DicItem.pKey.Ptr на pKeys(i) = DicItem.pItem.Ptr
Кликните здесь для просмотра всего текста
Добавлено через 8 минут Методом дидукции и подбора нашел смещение первого элемента в vba x64 у коллекций и словарей, но вот с поиском элемента по хэшу по сложнее там еще lcid, pHTbl, Div. Не подскажете, как и в чем или как определить эти смещения?
0
|
||||||
| 26.11.2023, 13:55 | ||||||
|
Нашел все смещения, "метод дидукции" продолжает рабоать. )
Добавлено через 1 час 5 минут Насчет смещения следующего элемента в хэш-таблице (у меня константа dictNxtpHItem) не очень уверен, х.з. как проверить, остальное все "попадает" ) Кликните здесь для просмотра всего текста
1
|
||||||
| 27.11.2023, 10:30 | |||||||||||
|
Dragokas, здравствуйте
Попробуйте рекурсивный QuickSort
Если нужно отсортировать только ключи, то проще
1
|
|||||||||||
|
|
|
| 27.11.2023, 17:35 [ТС] | |
|
Jack Famous, через 10 лет оно мне уже не особо нужно, но спасибо. Именно так и делаю в другой утилите.
Алгоритм не принципиально Quick Sort, или метод вставок (эффективность больше зависит от набора данных). Изначальный вопрос был вообще в принципе о методике сортировки именно словаря, а не массивов. Да и в 1-м посте был опубликован именно метод вставок из-за более простого для пояснения кода.
0
|
|
| 28.11.2023, 09:25 | ||||
![]()
0
|
||||
| 28.11.2023, 13:41 | ||
|
0
|
||
| 28.11.2023, 13:41 | |
|
Помогаю со студенческими работами здесь
40
Сортировка словаря Сортировка словаря сортировка словаря Сортировка словаря по ключу
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2.
Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
|
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
|
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
|
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2.
Данный документ берёт данные из другого нетипового документа. . .
|
|
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
|
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: реализовать программный контроль на предмет проведения документа. . .
|
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача:
1. Реализовать контроль заполнения реквизита. . .
|
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение:
DISM / Online / Add-Capability / CapabilityName:WMIC~~~~
Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
|