博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
买卖股票的最佳时机
阅读量:5230 次
发布时间:2019-06-14

本文共 1233 字,大约阅读时间需要 4 分钟。

题目:

买卖股票的最佳时机

 

描述:假设有一个数组,它的第i个元素是一支给定的股票在第i天的价格。如果你最多只允许完成一次交易(例如,一次买卖股票),设计一个算法来找出最大利润。

 

样例

 

给出一个数组样例 [3,2,3,1,2], 返回 1

 

思考:

我认为买卖股票的最佳时机是以最低的价格买入,以最高的价格抛出。所以是求最大差值(但是这样的理解好像有误区)

 

源码:

方式一:

package day01;public class maxProfit {    public static void main(String[] args) {        // TODO Auto-generated method stub        int arr []={3,2,3,1,2};        System.out.println(maxProfit(arr));    }    public static  int maxProfit(int [] prices) {                   // write your code here                   int i, d,j;                   int max = 0;                   for(i = 0; i < prices.length-1; i++)                 for (j=1;j
0&d>max){ max=d; } } return max; } }

 

 

方式二:

package day01;import java.util.Arrays;public class maxProfit_ {    public static void main(String[] args) {        // TODO Auto-generated method stub        int arr []={3,2,3,1,2};        System.out.println(maxProfit(arr));    }    public static  int maxProfit(int [] prices)     {        int i=0,max=0;        Arrays.sort(prices);        max=prices[prices.length-1]-prices[0];        return max;    }}

 

转载于:https://www.cnblogs.com/sunssh/p/6522504.html

你可能感兴趣的文章
基础笔记一
查看>>
uva 10137 The trip
查看>>
Count Numbers
查看>>
编写高质量代码改善C#程序的157个建议——建议110:用类来代替enum
查看>>
网卡bond技术
查看>>
UITabbarController的UITabbarItem(例:"我的")点击时,判断是否登录
查看>>
UNIX基础知识之输入和输出
查看>>
【洛谷 P1666】 前缀单词 (Trie)
查看>>
数据库锁机制及乐观锁,悲观锁的并发控制
查看>>
图像处理中双线性插值
查看>>
RobHess的SIFT代码解析之RANSAC
查看>>
03 线程池
查看>>
201771010125王瑜《面向对象程序设计(Java)》第十三周学习总结
查看>>
手机验证码执行流程
查看>>
python 基础 ----- 变量
查看>>
设计模式课程 设计模式精讲 2-2 UML类图讲解
查看>>
Silverlight 的菜单控件。(不是 Toolkit的)
查看>>
:hover 鼠标同时触发两个元素变化
查看>>
go语言学习十三 - 相等性
查看>>
Idea 提交代码到码云(提交到github也大同小异)
查看>>