感觉在数组里填充数的答案并不唯一吧,给出一种就可以。
其中一种就是当前数大于后面所有的数,或者是小于后面所有的数。
class Solution {
public int[] diStringMatch(String S) {
int max = S.length(),len = S.length();
int min = 0;
int[] res = new int[len+1];
for(int i=0;i<len;i++){
if(S.charAt(i)=='I'){
res[i] = min++;
}
if(S.charAt(i)=='D'){
res[i] = max--;
}
}
res[len] = max;
return res;
}
}