Форум: "Начинающим";
Текущий архив: 2006.01.29;
Скачать: [xml.tar.bz2];
Внизсравнение массивов Найти похожие ветки
← →
RDS © (2006-01-10 18:24) [0]Добрый вечер.
Вопрос следующий. Имеем
var
a, // заполнен
b, // заполнен
c : array of integer; // сформировать
Массивы a,b заполнены, длина массивов в общем случае разная, вс значения элементов внутри каждого массива уникальны. Требуется сформировать на основе а и b массив с, в который войдут значения, которые имеются только в одном из массивов
← →
Плохиш © (2006-01-10 18:29) [1]Надо использовать циклы и оператор сравнения на равенство.
← →
Johnmen © (2006-01-10 18:29) [2]А в чём затруднение?
← →
Джо © (2006-01-10 18:34) [3]> [1] Плохиш © (10.01.06 18:29)
> Надо использовать циклы и оператор сравнения на равенство.
+ процедуры и функции для работы с дин. массивами: High, SetLength.
← →
Leonid Troyanovsky © (2006-01-10 18:41) [4]
> Джо © (10.01.06 18:34) [3]
> + процедуры и функции для работы с дин. массивами: High,
> SetLength.
Скорее, цикл with SizeOf & CompareMem.
--
Regards, LVT.
← →
Джо © (2006-01-10 18:47) [5]> [4] Leonid Troyanovsky © (10.01.06 18:41)
Ну, SetLength все-таки придется использовать. Тем более в свете того, что, перед нами наверняка ученическая задачка или лабораторная работа.
← →
Leonid Troyanovsky © (2006-01-10 18:57) [6]
> Джо © (10.01.06 18:47) [5]
> Ну, SetLength все-таки придется использовать. Тем более
> в свете того, что, перед нами
Во-первых, в своих предположениях мы не должны опускаться до такого.
Во-вторых, а вдруг, все же, не динамические массивы.
Тем более, что они не очень популярны в академической среде.
--
Regards, LVT.
← →
Джо © (2006-01-10 18:58) [7][6] Leonid Troyanovsky © (10.01.06 18:57)
> Во-вторых, а вдруг, все же, не динамические массивы.
См [0]:
> c : array of integer; // сформировать
:-)
← →
Leonid Troyanovsky © (2006-01-10 19:01) [8]
> Джо © (10.01.06 18:58) [7]
> > c : array of integer; // сформировать
> :-)
Возможно, что опчепятка.
--
Regards, LVT.
← →
RDS © (2006-01-10 19:59) [9]Джо © (10.01.06 18:47) [5]
Не задачка. С алгоритмом не получается. Хотелось без временных массивов, пока не выходит.
Leonid Troyanovsky © (10.01.06 18:57) [6]
Массивы именно динамические. Поскольку заранее неизвестно кол-во их элементов. и процитирую самого себя :
=======================
длина массивов в общем случае разная
=======================
Впрочем все уже сделано, но мне как-то не нравится. Может кто подкинет свое решение задачи, если вдруг стало интересно.
ЗЫ. Свой вариант пока не выкладываю, дабы не повлиять на возможные ответы
← →
MBo © (2006-01-10 20:07) [10]Сливаем массивы вместе, сортируем за NlgN, затем одним проходом выбрасываем дубликаты (путем сдвига)
← →
RDS © (2006-01-10 20:12) [11]Так лучше чем я сделал. Я брал два временных массива, потом убивал в них дубликаты, потом сливал в один.
Спасибо.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.01.29;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.042 c