кортежи против записей

в чем разница между кортежами и записями?

3 ответов


оба типы товара, которые позволяют создавать типы из нескольких простых типов. Некоторые языки рассматривают кортежи как своего рода запись.

определения

Кортеж-это упорядоченная группа элементов, например (10, 25).

запись обычно представляет собой группу именованных элементов, таких как { "x": 10, "y": 25 } где значение имеет два поля помечены x и y и значение поля x is 10.

этимология

слово " кортеж "происходит от общего суффикса"- Кортеж "на" пятерка"," sextuple"," septuple"," octuple", которые означают группы из 5, 6, 7 и 8 соответственно.

слово "запись" происходит от таблицы данных. Вы можете придумать все возможные кортежи с x и y поля как таблица, где столбцы соответствуют полям и строкам, собирают все поля для конкретного экземпляра записи.

 value address     field x    field y
 0xABCD            10         25
 0x1234            42         "xyz"

эквивалентности видов продукции

вы можете рассматривать кортеж как своего рода запись, где индекс элемента кортежа-это его имя в эквивалентной записи, поэтому (10, 25) и { "0": 10, "1": 25 }. Я считаю, что стандартные ML и связанные языки используют записи в качестве базовой единицы введите conjunction (алгебраические типы данных обеспечить дизъюнкцию типа) и рассматривать кортежи как своего рода запись таким образом.


согласно Википедии:

в информатике, запись (также называется кортеж или struct) - одна из простейших структур данных, состоящая из двух или более значений или переменных, хранящихся в последовательных позициях памяти; так что каждый компонент (называемый полем или членом записи) может быть доступен путем применения различных смещений к стартовому адресу.

Я бы сказал, что есть небольшая разница между кортежем и рекорд.


запись-это полная строка элементов данных одной таблицы, скажем, у студента есть запись под номером рулона. 3 в одной таблице, где as tuple-супер набор записей, в которых данные принадлежат и другим таблицам, например строкам записей student roll no.3 в других таблицах отношений, т. е. посещаемость, результаты, контакты, сборы и т. д. Таким образом, весь набор данных одного студента из всех таблиц является кортежем. Насколько я знаю. Спасибо.