Имя: Пароль:
1C
1С v8
Сравнение нескольких значений
0 Мистикан
 
21.04.14
10:13
Исходные данные: массив(упорядочен) с динамическим количеством элементов
Задача: найти в массиве все изменения в значениях
Пример: Массив:1,1,1,2,2,5,6,6,6,7
Результат: соответствие: 1(3),2(4),5(6),6(7),7(10) в скобочках ключ

Можно конечно это сделать цикл в цикле по количеству элементов, но это с точки зрения программирования неправильно, при большой длине массива будет потребляться много ресурсов.
1 ДенисЧ
 
21.04.14
10:15
НАсколько я знаю, быстрее, чем О(n) ты всё равно не получишь.
Загружай в ТЗ и сворачивай.
2 kosts
 
21.04.14
10:15
1(1),2(4),5(6),6(7),7(10)
3 Wobland
 
21.04.14
10:17
ох уж мне эти сессии
4 kosts
 
21.04.14
10:20
(0) В один проход. Создавай соответствие при каждом изменении элемента. Программа на 5-7 строк, если я правильно понял условие.
5 Мистикан
 
21.04.14
10:21
В один проход. Создавай соответствие при каждом изменении элемента. Программа на 5-7 строк, если я правильно понял условие.

спасибо. видимо к концу рабочего дня туплю =)
6 Мистикан
 
21.04.14
10:22
ох уж мне эти сессии
не сессия. версионирование объектов в обычном приложении =)
7 Web00001
 
21.04.14
10:49
тоже когда то страдал, такой темой написал вот такую функцию http://www.1c-cod.ru/p/4kw0222p8rbswid и сунул ее в подписку перед записью.
Только у меня торговля и если объект версионировался, и у него была табличная часть, то номенклатура там должна была быть :) это было ключом для версионирования ТЧ объектов.
8 Defender aka LINN
 
21.04.14
10:57

1(3),2(4)

Куита какая-то. Или 1(1),2(4) или 1(3),2(5) тогда уже
9 Мистикан
 
22.04.14
03:26
Куита какая-то. Или 1(1),2(4) или 1(3),2(5) тогда уже

смысл в точке изменения версии реквизита
10 jsmith82
 
22.04.14
04:13
господи, бывает же
2 + 2 = 3.9999999999999999999999999999999...