2019招银信用中心,比特币最佳买卖时机
比特币最佳买卖时机
http://www.nowcoder.com/questionTerminal/08f70daa78bf45fea64d72523a3641f3
//2019招银信用中心,比特币最佳买卖时机 //暴力解法 //时间复杂度: O(n^2) //空间复杂度: O(n) void bitCoint() { string ss; getline(cin, ss); istringstream myStream(ss); //当数组长度未知时创建数组的方法 vector<int> price((istream_iterator<int>(myStream)), istream_iterator<int>()); int len = price.size(); int maxi = 0; for (int i = 0; i < len; i++) { for (int j = i + 1; j < len; j++) { maxi = max(price[j] - price[i], maxi); } } cout << maxi << endl; } //2019招银信用中心,比特币最佳买卖时机 //优化贪婪算法 //时间复杂度: O(n) //空间复杂度: O(n) void bitCointTwo() { string ss; getline(cin, ss); istringstream myStream(ss); vector<int> price((istream_iterator<int>(myStream)), istream_iterator<int>()); int len = price.size(); int maxprofit = 0; //最大收益 int minPrice = price[0]; //最小购入金 for (int i = 0; i < len; i++) { maxprofit = max(price[i] - minPrice, maxprofit); minPrice = min(price[i], minPrice); } cout << maxprofit << endl; }