//解题思路就是利用for循环,然后针对特殊情况进行处理
public class Solution {
public int[] temperatures (int[] dailyTemperatures) {
// write code here
if(dailyTemperatures==null){
return null;
}
int length = dailyTemperatures.length;
int[] result = new int[length];
//若数组的长度为1
if(length==1){
result[0]=0;
return result;
}
int temp;
for (int i = 0; i < length; i++) {
int j = i+1;
temp=1;
while (j<length){
if(dailyTemperatures[j]>dailyTemperatures[i]){
break;
}
temp++;
j++;
}
//对中间索引是最大值的特殊情况进行处理
if(i<length-2&&j==length){
result[i] = 0;
} else {
result[i]=temp;
}
}
//最后一个都是0
result[length-1]=0;
//对倒数第二个索引值进行单独处理
if(dailyTemperatures[length-2]<dailyTemperatures[length-1]){
result[length-2]=1;
} else {
result[length-2]=0;
}
return result;
}
}