移调偏移
问题描述:
推测我已经给定的起始索引和结束索引,我需要转化这些正值,并开始索引移调为0移调偏移
对于实施例:
(-5, -2) -> (0, 3)
(-2, 3) -> (0, 5)
(1, 10) -> (0, 9)
我可以使用一对if
来获得结果,但有没有一个优雅的单线程来做到这一点?
答
使用新的索引:(0, last-first)
答
使用Math.abs
找到最后一个元素的索引:
int adjustedFirst = 0;
int adjustedLast = Math.abs(first-last);
+0
根据提供的示例,不需要'Math.abs' - 它只是'int adjustedLast = last - first;' – UnholySheep
+0
@UnholySheep出于某种原因,我的印象是第一个索引可能大于第二个索引指数。如果情况并非如此,那么你是对的。 – Eran
答
从BOT指数减去第一指标
int secondIndex = secondIndex - firstIndex;
int firstIndex = firstIndex - firstIndex;
计算secondIndex
第一,你正在改变firstIndex
值。
究竟是什么逻辑?你是不是只减去两者的第一个“索引”? – UnholySheep
如果你真的需要一个班轮,你可能想要去[Code Golf](https://codegolf.stackexchange.com/)。 –