& Ldquo; мультимножества & Rdquo; & Амп; & Ldquo; MultiMap & Rdquo; - В чем смысл?

В следующем примере показаны несколько значений, отформатированных с использованием строк пользовательского формата, которые включают нулевые заполнители.

String.Format("{0:N1}", 29255.0);

Или

29255.0.ToString("N1")

результат "29,255.0"

String.Format("{0:N2}", 29255.0);

Или

29255.0.ToString("N2")

результат "29,255.00"

30
задан hippietrail 14 August 2012 в 09:12
поделиться

5 ответов

Некоторые варианты использования:

multimap

  • С почтовым индексом в качестве ключа, все люди, у которых есть этот почтовый индекс
  • С идентификатором учетной записи в качестве ключа все открытые заказы этого лица / учетной записи
  • Словарь с различными пояснениями для каждого ключевого слова

мультимножество

, по сути, представляет собой карту с ключом и целым числом .

  • Инвентарь магазина, все товары имеют свой ключ и количество по-прежнему доступно значение
  • накопленных данных о продажах магазина, каждый раз, когда продукт продается, идентификатор продукта добавляется в мультимножество, тем самым увеличивая проданное количество
35
ответ дан 27 November 2019 в 17:07
поделиться

http://www.cplusplus.com/reference/stl/multimap/

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

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

1
ответ дан 27 November 2019 в 17:07
поделиться

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

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

Другим примером может быть любой неуникальный индекс (например, в базе данных).

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

2
ответ дан 27 November 2019 в 17:07
поделиться

Мультимножество или мультиотображение просто для ситуаций, когда может быть более одного конкретного элемента. Например, предположим, вы хотите создать указатель для книги. Вы просматриваете текст, выкидываете все действительно общие бессмысленные слова («а», «ан», «тот» и т. Д.), А затем составляете список всех остальных и место в книге, где каждое произошел.

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

2
ответ дан 27 November 2019 в 17:07
поделиться

Вот что Википедия говорит об использовании:

  • В системе набора студентов, где студенты могут быть зарегистрированы в несколько классов одновременно, там может быть ассоциацией для каждого зачисление студента на курс, где ключ - это студенческий билет и значение - это идентификатор курса. Если студент обучается на трех курсах, будет три ассоциации содержащий такой же ключ.
  • Указатель книги может содержать любое количество ссылок для данного указателя. термин, и, таким образом, может быть закодирован как multimap из условий индекса в любой количество ссылок
0
ответ дан 27 November 2019 в 17:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: