Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/9: Рейтинг темы: голосов - 9, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 09.08.2019
Сообщений: 88

Как создать двумерный и трехмерный multiset

30.06.2020, 19:55. Показов 2059. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как создать двумерный и трехмерный multiset?

Добавлено через 8 минут
И multimap
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
30.06.2020, 19:55
Ответы с готовыми решениями:

Представить трехмерный массив как двумерный
Дан массив АЖ 3 размерности, каждый срез его это матрица, 2х мерный массив. Нужно его преобразовать в диагональную матрицу В, так чтобы...

Как создать трехмерный массив
Требуется создаться трехмерный массив. Пытался разными способами. Даёт ошибки ...

Как создать трёхмерный массив?
Как вообще вводится трехмерный массив, если надо, чтобы значения задавались с клавиатуры, т.е. не константные. Я знаю только то, что...

15
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
30.06.2020, 20:03
Цитата Сообщение от LexaNoob Посмотреть сообщение
Как создать двумерный и трехмерный multiset?
Что именно тебе нужно сделать? multiset и multimap это не массивы, они не бывают многомерными
1
0 / 0 / 0
Регистрация: 09.08.2019
Сообщений: 88
30.06.2020, 20:53  [ТС]
oleg-m1973, а можно реализовать двумерное красно черное дерево?
0
30.06.2020, 20:55

Не по теме:

Цитата Сообщение от LexaNoob Посмотреть сообщение
а можно реализовать двумерное красно черное дерево?
Это называется "гербарий". Любое дерево можно сделать двумерным если положить его на время между страницами толстой книги, %username%.

0
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
30.06.2020, 20:55
Цитата Сообщение от LexaNoob Посмотреть сообщение
oleg-m1973, а можно реализовать двумерное красно черное дерево?
А чем оно отличается от обычного, "одномерного" дерева?
1
0 / 0 / 0
Регистрация: 09.08.2019
Сообщений: 88
30.06.2020, 21:05  [ТС]
oleg-m1973, а в С++ есть какие-нибудь уже готовые реализации красно черных деревьев, или бинарных деревьев, или динамических структур, где быстро выполняется вставка и поиск элементов. И чтобы я мог создать из них многомерный массив?
0
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
30.06.2020, 21:08
Лучший ответ Сообщение было отмечено LexaNoob как решение

Решение

Цитата Сообщение от LexaNoob Посмотреть сообщение
oleg-m1973, а в С++ есть какие-нибудь уже готовые реализации красно черных деревьев, или бинарных деревьев, или динамических структур, где быстро выполняется вставка и поиск элементов. И чтобы я мог создать из них многомерный массив?
std::map реализован через красно-чёрное дерево. Ну и std::set, std::multimap/multiset тоже.
Не очень понятно что ты имеешь ввиду под многомерностью.
1
 Аватар для zayats80888
6352 / 3523 / 1428
Регистрация: 07.02.2019
Сообщений: 8,995
30.06.2020, 21:15
Цитата Сообщение от LexaNoob Посмотреть сообщение
И чтобы я мог создать из них многомерный массив?
Лучше рассказать, какую задачу решать нужно. Тогда и подходящую структуру данных и алгоритм посоветовать проще будет.
0
0 / 0 / 0
Регистрация: 09.08.2019
Сообщений: 88
30.06.2020, 21:34  [ТС]
zayats80888, Мне нужна динамическая структура данных, где будет происходить операции поиска, вставки, удаление за log(N). Также, чтобы я мог обратиться к ним по ключу. И если вдруг значения нет, то должно возвращать максимально приближенное значение. И двумерная.
0
 Аватар для zayats80888
6352 / 3523 / 1428
Регистрация: 07.02.2019
Сообщений: 8,995
30.06.2020, 21:39
LexaNoob, нет, это вам так видится решение вашей какой-то конкретной задачи. Я же спрашивал о самой задаче.
Например, "мне нужен быстрый поиск точки или ближайшей к ней в двумерном пространстве по паре координат".
0
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
30.06.2020, 21:41
Цитата Сообщение от LexaNoob Посмотреть сообщение
Также, чтобы я мог обратиться к ним по ключу. И если вдруг значения нет, то должно возвращать максимально приближенное значение.
Для этого воспользуйся методом lower_bound
Цитата Сообщение от LexaNoob Посмотреть сообщение
И двумерная.
Наверное, дерево можно считать двумерной структурой, потому что оно точно не одномерное, как массив, и не трёхмерное
1
0 / 0 / 0
Регистрация: 09.08.2019
Сообщений: 88
30.06.2020, 21:59  [ТС]
oleg-m1973, а lower_bound можно использовать в multiset?
0
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
30.06.2020, 22:02
Цитата Сообщение от LexaNoob Посмотреть сообщение
oleg-m1973, а lower_bound можно использовать в multiset?
Да, у него тоже есть такой метод
https://en.cppreference.com/w/... r/multiset
1
0 / 0 / 0
Регистрация: 09.08.2019
Сообщений: 88
30.06.2020, 22:09  [ТС]
oleg-m1973, А я смогу получить данные, если обращусь к нему по индексу или еще как - то. Допустим, мне нужно получить 3 элемент. Я это смогу сделать за О(log(N)) или за О(1)?
0
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
30.06.2020, 22:13
Цитата Сообщение от LexaNoob Посмотреть сообщение
oleg-m1973, А я смогу получить данные, если обращусь к нему по индексу или еще как - то. Допустим, мне нужно получить 3 элемент. Я это смогу сделать за О(log(N)) или за О(1)?
Нет, не сможешь. Либо по ключу за О(log(N)), либо перебором за O(N)

Добавлено через 1 минуту
Я правильно понимаю, что у тебя есть массив каких-то структур и нужно сделать поиск по разным полям?
1
Вездепух
Эксперт CЭксперт С++
 Аватар для TheCalligrapher
12938 / 6805 / 1821
Регистрация: 18.10.2014
Сообщений: 17,227
01.07.2020, 01:42
Цитата Сообщение от LexaNoob Посмотреть сообщение
Мне нужна динамическая структура данных, где будет происходить операции поиска, вставки, удаление за log(N). Также, чтобы я мог обратиться к ним по ключу. И если вдруг значения нет, то должно возвращать максимально приближенное значение. И двумерная.
Что такое "двумерная"? Что это слово вообще значит в данном контексте? Это именно то, чего от вас пытаются добиться.

Просто "и двумерная" - это бессмысленный набор слов. Поэтому объясняете сначала и без "и двумерная".
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.07.2020, 01:42
Помогаю со студенческими работами здесь

Как создать трехмерный массив?
$arraym = array ( 'Фрукты' => array('яблоко', 'банан', 'груша'), 'Овощи' =>...

Как создать большой трехмерный массив?
Доброго дня ! Как-то тут же на форуме я спрашивал про создание большого двумерного массива masA. Подсказали - int n1; n1=12; int...

Как создать трехмерный зубчатый массив?
Сделать трехмерный зубчастый массив. И если можно пример прямоугольного многомерного массива.

Как создать трехмерный массив из одномерного?
Вот первый раз, наверное, за ~год столкнулся с тем, что мне нужен 3-х мерный массив. Создать я его решил, конечно же, динамическим, по типу...

Как создать трехмерный динамический массив
Здравствуйте передо мной стоит такая задача. Нужно создать 3х мерный динамический массив 3 измерение которого, будет зависеть от n. т.е по...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&d=1772460536 Одним из. . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru