Структура данных

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
uhm
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1597
Зарегистрирован: 02.12.2004 (Чт) 15:21

Структура данных

Сообщение uhm » 28.06.2006 (Ср) 11:34

Никак не могу придумать, как оптимально описать такую структуру. Есть множество товаров и множество мест. Про каждое место известно, сколько в нем продается товара и по какой цене. При этом, в одном и том же месте можеть быть более одного продавца товара, т. е. паре (место, товар) может соответствовать несколько пар (цена, количество). Вопрос - с помощью каких структур VB проще всего это описать, так, чтобы можно было быстро получить все пары (цена, количество), зная пару (место, товар). Базу данных делать не хотелось бы, т. к. информации немного и она используется один раз.
Быть... или не быть. Вот. В чём вопрос?

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 28.06.2006 (Ср) 11:36

Иерархические коллекции со ссылками на связанные списки (Linked List). Только с циклическими ссылками надо будет аккуратно.
Lasciate ogni speranza, voi ch'entrate.

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 28.06.2006 (Ср) 11:41

База данных рулит.
Нет, правда, база данных - то, что надо.

Но, только сегодня, для извращенцев...
Код: Выделить всё
dim db as collection, v1 as variant, v2 as variant, i as long

set db=new collection
db.add array(array(10,20), array(30,40), array(50,60)), "place1" & vbnullchar & "good1"
db.add array(array(100,200), array(300,400), array(500,600)), "place2" & vbnullchar & "good2"

v1=db("place1" & vbnullchar & "good1")
for i=lbound(v1) to ubound(v1)
  v2=v1(i)
  debug.? "Цена-количество: " & v2(0) & "-" & v2(1) 
next
Последний раз редактировалось GSerg 28.06.2006 (Ср) 11:53, всего редактировалось 1 раз.
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

jangle
Википедик
Википедик
Аватара пользователя
 
Сообщения: 3013
Зарегистрирован: 03.06.2005 (Пт) 12:02
Откуда: Нидерланды

Сообщение jangle » 28.06.2006 (Ср) 11:53

COM Storage - как раз для твоей цели.

http://forum.sources.ru/index.php?showtopic=145145

uhm
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1597
Зарегистрирован: 02.12.2004 (Чт) 15:21

Сообщение uhm » 28.06.2006 (Ср) 11:54

Спасибо!

Как у меня часто бывает, условия задачи грозят измениться, возможно, тогда и использование баз данных станет оправданным.
Быть... или не быть. Вот. В чём вопрос?


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: SemrushBot, Yandex-бот и гости: 115

    TopList