Из этих выводов:
/* 2 1
1 2
1 2
1 1
*/
хочу уточнить, 'a' и 'b' это 'следующий' и 'предыдущий' элементы масива?