|
Объединить два массива | ☑ | ||
---|---|---|---|---|
0
M0narch
25.04.13
✎
17:27
|
Имеем два массива. Как получить в результате один новый массив, с элементами, которые есть в обоих массивах ?
|
|||
1
Wobland
25.04.13
✎
17:28
|
какие варианты ответа?
|
|||
2
drcrasher
25.04.13
✎
17:29
|
ага, голосовалку добавь =)
|
|||
3
M0narch
25.04.13
✎
17:29
|
(1) пока только перебор на ум приходит
|
|||
4
ДенисЧ
25.04.13
✎
17:30
|
Запросом
|
|||
5
Rie
25.04.13
✎
17:30
|
(3) Перебор. Но только - после сортировки.
|
|||
6
Maxus43
25.04.13
✎
17:30
|
я за перебор, зачем усложнять
|
|||
7
Wobland
25.04.13
✎
17:31
|
(6) перебор может оказаться менее эффективным, нежели получение нужного массива из того места, откуда получаются заявленные два. но автор темнит
|
|||
8
Rie
25.04.13
✎
17:31
|
(6) Элементы могут повторяться. Сортировка позволит отсеять их сразу. А иначе - придётся пое^Hмаяться.
|
|||
9
Fragster
гуру
25.04.13
✎
17:32
|
соответствие и 3 цикла
|
|||
10
Нуф-Нуф
25.04.13
✎
17:33
|
Массив3 = Массив1 + Массив2. иниипет
|
|||
11
zak555
25.04.13
✎
17:33
|
Для Каждого из ЭлементКороткогоМассива Из КороткийМассив
Если ДлинныйМассив.Найти(ЭлементКороткогоМассива) = Неопределено Тогда ДлинныйМассив.Дабавить(ЭлементКороткогоМассива ); КонецЕсли; КонецЦикла; |
|||
12
M0narch
25.04.13
✎
17:36
|
(11) наоборот скорее всего
|
|||
13
Serg_1960
25.04.13
✎
17:38
|
Массивы выгрузить в ТЗ. ТЗ - две колонки: значение из массива и счетчик (1). Потом ТЗ свернуть по значению, суммируя счетчик... продолжить или и так всё ясно?
|
|||
14
M0narch
25.04.13
✎
17:39
|
(13) ясно
|
|||
15
patapum
25.04.13
✎
17:52
|
(0) интересно, задача, которую я придумал давать на собеседованиях потенциальным стажерам, чтобы проверить наличие алгоритмического мышления (когда я еще во фране работал). ТС, откуда тебе задача прилетела?
|
|||
16
M0narch
25.04.13
✎
18:50
|
(15) ваяю тут кое что
|
|||
17
MaxisUssr
25.04.13
✎
18:52
|
(0)
Я бы запросом сделал |
|||
18
Fragster
гуру
25.04.13
✎
19:20
|
(17) проясвяти, плиз, как запросом сделать такое для массивов [1, 2, 3] и ["й", "ц", "у"]. Результат, соответственно, должен получиться примерно такой: [1, 2, 3, "й", "ц", "у"]
|
|||
19
Rie
25.04.13
✎
19:25
|
(18) Легко.
ВЫБРАТЬ Массив.Значение ПОМЕСТИТЬ М1 ИЗ &Массив КАК Массив; ВЫБРАТЬ Массив.Значение ПОМЕСТИТЬ М2 ИЗ &Массив КАК Массив; ВЫБРАТЬ Значение ИЗ М1 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ Значение ИЗ М2 |
|||
20
Fragster
гуру
25.04.13
✎
19:25
|
(19) а с какого релиза работает такая выборка из массива?
|
|||
21
Rie
25.04.13
✎
19:26
|
(2) А кто сказал, что из массива? Из таблицы значений, созданной из массива.
|
|||
22
Fragster
гуру
25.04.13
✎
19:27
|
кстати, в последнем запросе не "выбрать ... объединить все выбрать ...", а "выбрать различные ... объединить выбрать различные ..."
|
|||
23
Rie
25.04.13
✎
19:28
|
(22) Там и в первых запросах не &Массив, а &Массив1 и &Массив2 должно быть.
|
|||
24
Fragster
гуру
25.04.13
✎
19:28
|
(21) т.е. 2 цикла, чтобы определить типы, 2 цикла чтобы наполнить таблицы, запрос, выгрузить, выгрузить колонку? Кривовато же...
|
|||
25
Rie
25.04.13
✎
19:30
|
(24) Почему циклы? ЗагрузитьКолонку().
Но я никоим образом не настаиваю на варианте из (17), моё предложение - (5). Я лишь к тому, что можно и запросом - если вдруг свободное время выдалось и занять его нечем. |
|||
26
Fragster
гуру
25.04.13
✎
19:30
|
(25) чтобы загрузитьколонку - надо сначала строки создать...
|
|||
27
Fragster
гуру
25.04.13
✎
19:31
|
(26)+ а это только в цикле же
|
|||
28
Rie
25.04.13
✎
19:34
|
(27) Согласен. Надо переходить на 7-ку - там и без цикла можно :-)
|
|||
29
M0narch
26.04.13
✎
10:32
|
(18) по условию задачи из массивов [1, 2, 3] и ["й", "ц", "у"] должен получиться пустой массив, так как совпадающих элементов нет
|
|||
30
Fragster
гуру
26.04.13
✎
12:20
|
(29) а ведь и правда
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |