Хорошее предложение, @LorenHawthorne — и, я думаю, мы могли бы сделать это относительно легко. Если я правильно вас понял, вы хотите, чтобы программа оставляла всё, что имеет +1 или -1 (как это происходит сейчас), но также оставляла +-0, чтобы их было легче найти.
Недавно я довольно много использовал AdjLists, и мне пришло в голову, было бы ли полезно генерировать «потенциальные точки сжатия» вот так (где вместо +-0 они уже равны -1 и просто ждут удаления % в начале строки, чтобы активировать сжатие:
PSA 2.4 +0% +[2]
PSA 2.5 +0% +[2]
% PSA 2.6 -1
PSA 2.7 +0% +[2] +[3]
PSA 2.8 +0%
% PSA 2.8 -1[2]
PSA 2.9 +0% +[2]
PSA 2.10 +0% +[2]
Я не знаю, насколько это осуществимо, но это определенно сэкономило бы много усилий, связанных с поиском неуловимого +-0 среди других точек.
Nice suggestion, @LorenHawthorne - and I think we could do that relatively easily. If I understand you correctly, you want it to leave anything that has a +1 or -1 (as it does now), but also leave in the +-0 so that they are easier to find.
Having used AdjLists quite a bit recently, I wondered whether it would also be helpful to generate the “potential shrink points” like this (where instead of being +-0 they are already -1 and just waiting for the % to be removed from the start of the line to activate the shrink:
PSA 2.4 +0% +[2]
PSA 2.5 +0% +[2]
% PSA 2.6 -1
PSA 2.7 +0% +[2] +[3]
PSA 2.8 +0%
% PSA 2.8 -1[2]
PSA 2.9 +0% +[2]
PSA 2.10 +0% +[2]
I don’t know how feasible it would be to create the list like that, but it would certainly save a lot of hard eye work looking for the elusive +-0 hidden amongst the other points.