推測我已經給定的起始索引和結束索引,我需要轉化這些正值,並開始索引移調爲0移調偏移
對於實施例:
(-5, -2) -> (0, 3)
(-2, 3) -> (0, 5)
(1, 10) -> (0, 9)
我可以使用一對if
來獲得結果,但有沒有一個優雅的單線程來做到這一點?
推測我已經給定的起始索引和結束索引,我需要轉化這些正值,並開始索引移調爲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);
根據提供的示例,不需要'Math.abs' - 它只是'int adjustedLast = last - first;' – UnholySheep
@UnholySheep出於某種原因,我的印象是第一個索引可能大於第二個索引指數。如果情況並非如此,那麼你是對的。 – Eran
從BOT指數減去第一指標
int secondIndex = secondIndex - firstIndex;
int firstIndex = firstIndex - firstIndex;
計算secondIndex
第一,你正在改變firstIndex
值。
究竟是什麼邏輯?你是不是隻減去兩者的第一個「索引」? – UnholySheep
如果你真的需要一個班輪,你可能想要去[Code Golf](https://codegolf.stackexchange.com/)。 –