ThumbUpSample icon indicating copy to clipboard operation
ThumbUpSample copied to clipboard

小算法写复杂了额

Open walkthehorizon opened this issue 7 years ago • 1 comments

` private void calculateChangeNum(int change) { if (change == 0) { nums[0] = String.valueOf(count); nums[1] = ""; nums[2] = ""; return; } toBigger = change > 0; String oldNum = String.valueOf(count); String newNum = String.valueOf(count + change);

    for (int i = 0; i < oldNum.length(); i++) {
        char oldC1 = oldNum.charAt(i);
        char newC1 = newNum.charAt(i);
        if (oldC1 != newC1) {
            nums[0] = i == 0 ? "" : newNum.substring(0, i);
            nums[1] = oldNum.substring(i);
            nums[2] = newNum.substring(i);
            break;
        }
    }
}`

嗯,其实这样就可以了,没必要单独判断总个数变化的情况,总个数变化时第一个字符必定不同

walkthehorizon avatar Oct 25 '17 09:10 walkthehorizon

有道理,我当时只想着长度不同,最后一直取可能导致数组越界,没想着其实根本就不会取到最后。

arvinljw avatar Oct 26 '17 05:10 arvinljw