Мне нужно сосчитать только те элементы, которые перемещаются пользователем, исключая элементы, которые изменили индексы только потому, что другие объекты подталкивали их вверх или вниз. «I+1» подталкивается к индексу «I». И не все движения считать удвоены. Если предмет движется дважды или вниз, тогда изменения в индексах составляют три. Например, если элемент перемещается дважды вниз, то количество измененных элементов Индекс будет 3 вместо 1, как на рисунке. Как подсчитать количество элементов в списке, которые перемещаются вверх или вниз пользователем? Если этот элемент после нескольких движений от пользователя возвращается в исходный индекс, то он не рассматривается как движение.
Код: Выделить всё
D moved down one time
original list: A,B,C,D,E,F,H,I,J
changed list: A,B,C,E,D,F,H,I,J
the count should be 1
< /code>
< /li>
< /ol>
D moved down two times
original list: A,B,C,D,E,F,H,I,J
changed list: A,B,C,E,F,D,H,I,J
the count should be 2
< /code>
< /li>
< /ol>
E moved down one time, D moved down one time
original list: A,B,C,D,E,F,H,I,J
changed list: A,B,C,F,D,E,D,I,J
the count should be 2
< /code>
4 < /p>
E moved down one time, D moved down one time
original list: A,B,C,D,E,F,H,I,J
changed list: A,B,C,F,D,E,H,I,J
the count should be 2
Подробнее здесь: https://stackoverflow.com/questions/796 ... up-or-down