机测题目三:根据气温列表,重新生成一个列表,对应位置输出的是需要等待几天,温度才会升高超过当天的温度

例如:

输入: temperature = [ 73,74,75,71,69,72,76,73 ]
输出: [ 1,1,4,2,1,1,0,0 ]

import java.util.*;

public class Main {
	// 第二题:每日温度
	public static void main(String [] Args){
		
		int [] temperatures = {73,74,75,71,69,72,76,73};
		
		// 存储计算结果
		int [] result =new int[8];
		
		for(int i=0;i<temperatures.length;i++){
			int temp = temperatures[i];     // 当天温度
			int days =0;        // 存储需要几天才会超过当天温度
			int j;
			for(j=i+1;j<temperatures.length;j++){			
					int tempJ = temperatures[j];   // 当天过后 第 j 天的气温
					if(temp>=tempJ){
						days++;
					}else{
						days++;
						break;
					}
				}
			
			if(j==temperatures.length){     // 这种情况是当天的温度,是近几天的最高气温
				result[i]=0;
			}else{
				result[i]=days;
			}
		}
		for(int i : result){
			System.out.print(i+" ");
		}
		
	}

}

你可能感兴趣的:(#,Java--华为在线面试题)