劍指offer第63:股票的最大利潤
假設有一個數組,它的第i個元素是一支給定的股票在第i天的價格。如果你最多隻允許完成一次交易(例如,一次買賣股票),設計一個演算法來找出最大利潤。
# -*- coding:utf-8 -*- class Solution: def Sell_stock(self, num): length=len(num) if length <2 or num is None: return 0 min=num[0] max_diff=num[1]-[0] for i in range(2,length): if num[i-1]<min: min=num[i-1] cur_diff=num[i]-min if cur_diff>max_diff: max_diff=cur_diff i+=1 return max_diff
沒有輸入資料實驗,但是應該沒什麼問題。
相關推薦
劍指offer第63:股票的最大利潤
假設有一個數組,它的第i個元素是一支給定的股票在第i天的價格。如果你最多隻允許完成一次交易(例如,一次買賣股票),設計一個演算法來找出最大利潤。 # -*- coding:utf-8 -*- class Solution: def Sell_stock(self, num):
劍指offer-題63:二叉搜尋樹的第k個結點
題目描述 給定一顆二叉搜尋樹,請找出其中的第k大的結點。例如, 5 / \ 3 7 /\ /\ 2 4 6 8 中,按結點數值大小順序第三個結點的值為4。 實驗平臺:牛客網 解決思路:
劍指offer第22:連結串列中倒數第k個結點
題目描述 輸入一個連結串列,輸出該連結串列中倒數第k個結點。 class Solution: def FindKthToTail(self, head, k): # write code here if k<=0 or head
劍指offer第3:陣列中重複的數字
題目描述 在一個長度為n的數組裡的所有數字都在0到n-1的範圍內。 陣列中某些數字是重複的,但不知道有幾個數字是重複的。也不知道每個數字重複幾次。請找出陣列中任意一個重複的數字。 例如,如果輸入長度為7的陣列{2,3,1,0,2,5,3},那麼對應的輸出是第一個重複的數字2。 # -*- c
劍指offer第66:構建乘積陣列
題目描述 給定一個數組A[0,1,...,n-1],請構建一個數組B[0,1,...,n-1],其中B中的元素B[i]=A[0]*A[1]*...*A[i-1]*A[i+1]*...*A[n-1]。不能使用除法。 # -*- coding:utf-8 -*
劍指offer第65:不用加減乘除做加法
題目描述 寫一個函式,求兩個整數之和,要求在函式體內不得使用+、-、*、/四則運算子號。 # -*- coding:utf-8 -*- class Solution: def Add(self, num1, num2): # write code here
劍指offer第64:求1+2+3+...+n
題目描述 求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等關鍵字及條件判斷語句(A?B:C)。 # -*- coding:utf-8 -*- class Solution: def Sum_Solution(self, n):
劍指offer第62:圓圈中最後剩下的數字
題目描述 每年六一兒童節,牛客都會準備一些小禮物去看望孤兒院的小朋友,今年亦是如此。HF作為牛客的資深元老,自然也準備了一些小遊戲。其中,有個遊戲是這樣的:首先,讓小朋友們圍成一個大圈。然後,他隨機指定一個數m,讓編號為0的小朋友開始報數。每次喊到m-1的那個小朋友要出列唱首歌,然後可以在禮品箱
劍指offer第57:和為S的兩個數字
題目描述 輸入一個遞增排序的陣列和一個數字S,在陣列中查詢兩個數,使得他們的和正好是S,如果有多對數字的和等於S,輸出兩個數的乘積最小的。 輸出描述: 對應每個測試案例,輸出兩個數,小的先輸出。 # -*- coding:utf-8 -*- class Solutio
30、劍指offer--連續子數組最大和
動態 計算機 i++ 初始 pre reat urn eat 開完 題目描述 HZ偶爾會拿些專業問題來忽悠那些非計算機專業的同學。今天測試組開完會後,他又發話了:在古老的一維模式識別中,常常需要計算連續子向量的最大和,當向量全為正數的時候,問題很好解決。但是,如果向量中包含
劍指offer-滑動窗口的最大值
pop pty 代碼 back solution 一個數 描述 desc vector 題目描述 給定一個數組和滑動窗口的大小,找出所有滑動窗口裏數值的最大值。例如,如果輸入數組{2,3,4,2,6,2,5,1}及滑動窗口的大小3,那麽一共存在6個滑動窗口,他們的
劍指offer python版 禮物的最大價值
臨時 python sel temp pan range val offer 數值 class Solution: def getmaxValue(self, values, rows, cols): if not values or rows&l
[劍指offer]連續子陣列的最大和
本博文引自:http://blog.csdn.net/u014458048/article/details/54971991 題目描述: 輸入一個整形陣列,數組裡有正數也有負數。 陣列中連續的一個或多個整陣列成一個子陣列,每個子陣列都有一個和。求所有子陣列的和的
【Java】 劍指offer(59-2) 佇列的最大值 《劍指Offer》Java實現合集 《劍指Offer》Java實現合集
本文參考自《劍指offer》一書,程式碼採用Java語言。 更多:《劍指Offer》Java實現合集 題目 請定義一個佇列並實現函式max得到佇列裡的最大值,要求函式max、push_back和pop_front的時間複雜度都是O(1)。 思路 與滑動
劍指Offer-66-滑動視窗的最大值
專案地址:https://github.com/SpecialYy/Sword-Means-Offer 問題 給定一個數組和滑動視窗的大小,找出所有滑動窗口裡數值的最大值。例如,如果輸入陣列{2,3,4,2,6,2,5,1}及滑動視窗的大小3,那麼一共存在6個滑動視窗,他們的最大
劍指offer 64. 滑動視窗的最大值
題目描述 給定一個數組和滑動視窗的大小,找出所有滑動窗口裡數值的最大值。例如,如果輸入陣列{2,3,4,2,6,2,5,1}及滑動視窗的大小3,那麼一共存在6個滑動視窗,他們的最大值分別為{4,4,6,6,6,5}; 針對陣列{2,3,4,2,6,2,5,1}的滑動視窗有以下6個: {[
【劍指offer】連續子陣列最大和
題目:在古老的一維模式識別中,常常需要計算連續子向量的最大和,當向量全為正數的時候,問題很好解決。但是,如果向量中包含負數,是否應該包含某個負數,並期望旁邊的正數會彌補它呢?例如:{6,-3,-2,7,-15,1,2,2},連續子向量的最大和為8(從第0個開始,到第3個為止)。給一個數組,返回它的最大連續子序
(劍指offer)滑動視窗的最大值
時間限制:1秒 空間限制:32768K 熱度指數:126716 題目描述 給定一個數組和滑動視窗的大小,找出所有滑動窗口裡數值的最大值。例如,如果輸入陣列{2,3,4,2,6,2,5,1}及滑動視窗的大小3,那麼一共存在6個滑動視窗,他們的最大值分別為{4,4,6,6,6,5}; 針
劍指Offer-59 滑動視窗的最大值
題目: 給定一個數組和滑動視窗的大小,請找出所有滑動窗口裡的最大值。 例如,如果輸入陣列[2, 3, 4, 2, 6, 2, 5, 1]及滑動視窗的大小3,那麼一共存在6個滑動視窗,它們的最大值分別為[4, 4, 6, 6, 6, 5]。 注意: 資料保證k大於0,且k小於等於陣列長度。
劍指Offer-連續子陣列的最大和
題目描述 HZ偶爾會拿些專業問題來忽悠那些非計算機專業的同學。今天測試組開完會後,他又發話了:在古老的一維模式識別中,常常需要計算連續子向量的最大和,當向量全為正數的時候,問題很好解決。但是,如果向量中包含負數,是否應該包含某個負數,並期望旁邊的正數會彌補它呢?例如:{6,