力扣-10.13-121

在这里插入图片描述
方法一:(自己写的)
对每一个i找i之后的最大利润值

class Solution {
    
    
    public int maxProfit(int[] prices) {
    
    
    	if(prices.length==0) {
    
    
			return 0;
		}
        int profit=0;
		for(int i=0;i<prices.length-1;i++) {
    
    
			for(int j=i+1;j<prices.length;j++) {
    
    
				if(prices[j]>prices[i] && (prices[j]-prices[i])>profit) {
    
    
					profit=prices[j]-prices[i];
				}
			}
		}
		return profit;
    }
}

方法二:

class Solution {
    
    
    public int maxProfit(int[] prices) {
    
    
        if(prices.length==0) {
    
    
			return 0;
		}
		int profit=0;
		int minPrice=prices[0];
		for(int i=1;i<prices.length;i++) {
    
    
			if(prices[i]<minPrice) {
    
    
				minPrice=prices[i];
			}else {
    
    
				profit=Math.max(profit,prices[i]-minPrice);
			}
		}
		return profit;
    }
}

猜你喜欢

转载自blog.csdn.net/Desperate_gh/article/details/109044880