當前位置:首頁 » 股票買賣 » leetcode買賣股票
擴展閱讀
設計總院股票歷史股價 2023-08-31 22:08:17
股票開通otc有風險嗎 2023-08-31 22:03:12
短線買股票一天最好時間 2023-08-31 22:02:59

leetcode買賣股票

發布時間: 2022-09-15 11:28:11

A. 股票做t是什麼意思,由什麼技巧

股票中做T也就T+0,一種操作方法的簡稱,T+0交易通俗地說,就是當天買入的股票在當天就可以賣出。T+0交易曾在我國實行過,但因為它的投機性太大,所以,自1995年1月1日起,為了保證股票市場的穩定,防止過度投機,股市改為實行「T+1」交易制度,當日買進的股票,要到下一個交易日才能賣出。同時,對資金仍然實行「T+0」,即當日回籠的資金馬上可以使用。

T+0交易,比方說你手裡有股票一千股,今天你判斷該股票能大漲,你就先買入該股票五百股或一千股都行,但是之前收盤你必須賣出你原先的股票,這樣你的手裡還是一千股股票。
還有一種方法,就是你感覺今天你的股票要大跌,就開盤逢高先賣出該股票五百股股票或一千股股票,尾盤快收盤再買回來五百股股票或一千股股票。這樣你的手裡還是一千股股票。

選擇剛剛從底部啟動,形成上升趨勢的股票,要掌握該股的股性,主力經常早盤拉起,中盤砸下,尾盤又拉起,幾乎每日如此要有良好的盤面感覺,早盤拉起時,感覺拉不動了,就及時賣出,動作要快,砸下時感覺砸不動了,就及時買入拉起賣出後,當天必須買回,如果第二天再買回,就重新計算成本了

T+0操作的個股要和大盤結合起來,在趨勢上要相對吻合,同熱點相吻合。當然最主要的是對個股的短期走勢要有研究,把握住它的脈搏。操作時必須克服心理障礙,要做到膽大心細。

操作必須注意的事項:
做T+0操作你必須有足夠的時間盯住盤面,盤面語言掌握了才能更好的操作,做T+0操作要將分時走勢,5分鍾走勢和15分鍾走勢圖結合起來觀察,才能較好地把握機遇。事先要做好功課,心中有數,在盤面上一旦出現了你預測到的情況,才能胸有成竹地做好這次操作。

這些可以慢慢去領悟,投資者在不熟悉操作前可先用個模擬盤去演練,很快就能掌握其中奧秒,我平時炒股在不會操作的情況下都會用個牛股寶模擬盤先去演練,等明白後再去實戰,個人認為這樣操作相對來說比較穩妥,願能幫助到你,祝投資愉快!

B. 103. leetcode筆記(1~60)

d1

https://leetcode-cn.com/problems/two-sum
給定 nums = [2, 7, 11, 15], target = 9
因為 nums[0] + nums[1] = 2 + 7 = 9
所以返回 [0, 1]
【hashmap存儲】

給定兩個大小為 m 和 n 的有序數組 nums1 和 nums2。
請你找出這兩個有序數組的中位數,並且要求演算法的時間復雜度為 O(log(m + n))。

nums1 = [1, 2]
nums2 = [3, 4]
則中位數是 (2 + 3)/2 = 2.5
【奇偶判斷】

給定一個字元串 s,找到 s 中最長的迴文子串。你可以假設 s 的最大長度為 1000。
輸入: "babad"
輸出: "bab"
注意: "aba" 也是一個有效答案。
【雙循環貪心】

d2

判斷一個整數是否是迴文數。迴文數是指正序(從左向右)和倒序(從右向左)讀都是一樣的整數。
輸入: 121
輸出: true
【折半比較】

給定一個包含大寫字母和小寫字母的字元串,找到通過這些字母構造成的最長的迴文串。
在構造過程中,請注意區分大小寫。比如 "Aa" 不能當做一個迴文字元串。
注意:
假設字元串的長度不會超過 1010。
示例:
輸入:
"abccccdd"
輸出:
7
【集合更新與判空】(add remove, 放入可迴文的字元,無重復)

給你一個字元串 s 和一個字元規律 p ,請你來實現一個支持 '.' 和 '*' 的正則表達式匹配。
'.' 匹配任意單個字元
'*' 匹配零個或多個前面的那一個元素
所謂匹配,是要涵蓋 **整個 **字元串 s 的,而不是部分字元串。
說明:

【正則包與結果項】

d3

給定一個排序數組,你需要在原地刪除重復出現的元素,使得每個元素只出現一次,返回移除後數組的新長度。
不要使用額外的數組空間,你必須在原地修改輸入數組並在使用 O(1) 額外空間的條件下完成。
示例:
給定數組 nums = [1,1,2],
函數應該返回新的長度 2, 並且原數組 nums 的前兩個元素被修改為 1, 2。
你不需要考慮數組中超出新長度後面的元素。
【新計數索引】

給定一個數組 nums 和一個值 val,你需要原地移除所有數值等於 val 的元素,返回移除後數組的新長度。
不要使用額外的數組空間,你必須在原地修改輸入數組並在使用 O(1) 額外空間的條件下完成。
元素的順序可以改變。你不需要考慮數組中超出新長度後面的元素。
示例:
給定 nums = [3,2,2,3], val = 3,
函數應該返回新的長度 2, 並且 nums 中的前兩個元素均為 2。
你不需要考慮數組中超出新長度後面的元素。
【while val存在】

實現 strStr() 函數:
給定一個 haystack 字元串和一個 needle 字元串,在 haystack 字元串中找出 needle 字元串出現的第一個位置 (從0開始)。如果不存在,則返回 -1。
示例:
輸入: haystack = "hello", needle = "ll"
輸出: 2

【str.index(p)】

d4

【分支遞歸乘數】

給定一個整數數組 nums,求出數組從索引 i 到 j (i ≤ j) 范圍內元素的總和,包含 i, j 兩點。
給定 nums = [-2, 0, 3, -5, 2, -1],求和函數為 sumRange()
sumRange(0, 2) -> 1
sumRange(2, 5) -> -1
sumRange(0, 5) -> -3
【緩存和】

給定一個二進制數組,你可以最多將 1 個 0 翻轉為 1,找出其中最大連續 1 的個數。
輸入:[1,0,1,1,0]
輸出:4
解釋:翻轉第一個 0 可以得到最長的連續 1。
當翻轉以後,最大連續 1 的個數為 4。
【最近0的出現位置】

d5

對於一個 正整數,如果它和除了它自身以外的所有正因子之和相等,我們稱它為「完美數」
輸出: True
解釋: 28 = 1 + 2 + 4 + 7 + 14
【折平根比較】

修改一個數,則變成非遞減數列,輸出True
【嵌套條件分支】

123456789101112...求出第N個數字對應的單字元數值
【while True中的數量級t和求解條件m】

d6

列表中存在最大長度為k的兩個相等的數,則返True
給定一個整數數組和一個整數 k,判斷數組中是否存在兩個不同的索引 i 和 j,使得 nums [i] = nums [j],並且 i 和 j 的差的絕對值最大為 k。如輸入: nums = [1,2,3,1], k = 3, 輸出: true

【集合表示滑動窗口】

【雙指針追蹤】

兩個數不是同一個數,存在某數2倍數的一個數則返回True
【判雙零】

d7

兩個數值型字元串,相加後返回結果字元串
【while中低位進位】

求節點與其祖先之間的最大差,如:

【左右遞歸dfs返回最大差】

一排人領糖果, 相鄰的人rating高的獲得較多糖,每人都有糖果。

老師想給孩子們分發糖果,有 N 個孩子站成了一條直線,老師會根據每個孩子的表現,預先給他們評分。
你需要按照以下要求,幫助老師給這些孩子分發糖果:
每個孩子至少分配到 1 個糖果。
相鄰的孩子中,評分高的孩子必須獲得更多的糖果。
那麼這樣下來,老師至少需要准備多少顆糖果呢?如輸入: [1,0,2], 輸出: 5
解釋: 你可以分別給這三個孩子分發 2、1、2 顆糖果。

【左右規則】

d8

返回鏈表中倒數第k個節點值
【雙指針追蹤】

是否平衡二叉樹,即任意一個節點其兩顆子樹的高度差不超過一。
【遞歸返回是否平衡和樹高】

【三重while中低位進位】

d9

刪除鏈表中的節點
【製造偽頭結點】

之字形層次遍歷二叉樹,如:

【遞歸含層數的層次遍歷與折返判斷】

如果一個數的左邊數組和與右邊數組和相等,則返回此中間數的索引。
【從左累加與總和比較】

d10

輸出二叉樹的鏡像, 如:

【製造臨時節點的自身遞歸】

自底向上遍歷二叉樹,如:

【遞歸層次遍歷】

【含hashmap[depth]的dfs遞歸】

d11

返回除法結果,不越界[-2**31, 2**31-1]
【正負/零劃分】

一個數的二進製表示中1的個數
【帶奇偶判斷的逐右移位】

移除所有值為val的節點,返回鏈表。如輸入: 1->2->6->3->4->5->6, val = 6
輸出: 1->2->3->4->5
【含有目標比較的自身遞歸】

d12

實現int sqrt(int x)函數
【牛頓迭代】

【兩次判空與全存在的各自相加】

求出根到葉子節點路徑總和為固定值的所有路徑集

【目標遞減下葉子和當前更新的路徑和與目標值的比較】

d13

數組中是否有獨一無二的出現次數
【hashmap計數與值數組判重】

給定一個無序的整數數組,找到其中最長上升子序列的長度。如輸入: [10,9,2,5,3,7,101,18]
輸出: 4 ,解釋: 最長的上升子序列是 [2,3,7,101],它的長度是 4。

【雙循環動態規劃】

【遞歸判斷】

d14

給定一個數組,它的第 i 個元素是一支給定股票第 i 天的價格。
如果你最多隻允許完成一筆交易(即買入和賣出一支股票),設計一個演算法來計算你所能獲取的最大利潤。
注意你不能在買入股票前賣出股票。如輸入: [7,1,5,3,6,4]
輸出: 5
解釋: 在第 2 天(股票價格 = 1)的時候買入,在第 5 天(股票價格 = 6)的時候賣出,最大利潤 = 6-1 = 5 。
注意利潤不能是 7-1 = 6, 因為賣出價格需要大於買入價格。

【最低股價與最大利潤同時更新】

輸入一個整型數組,數組里有正數也有負數。數組中的一個或連續多個整數組成一個子數組。求所有子數組的和的最大值。
要求時間復雜度為O(n)。如輸入: nums = [-2,1,-3,4,-1,2,1,-5,4]
輸出: 6, 解釋: 連續子數組 [4,-1,2,1] 的和最大,為 6。

【max0 sum0初始索引0賦值,與sum0>0判斷】

給定正整數 n,找到若干個完全平方數(比如 1, 4, 9, 16, ...)使得它們的和等於 n。你需要讓組成和的完全平方數的個數最少。如輸入: n = 12
輸出: 3 ,解釋: 12 = 4 + 4 + 4
【動態規劃雙循環解背包問題】

d15

統計所有小於非負整數 n 的質數的數量。如輸入: 10
輸出: 4,解釋: 小於 10 的質數一共有 4 個, 它們是 2, 3, 5, 7 。
【篩去法】

找出第 n 個丑數。
丑數就是只包含質因數 2, 3, 5 的正整數。如輸入: n = 10
輸出: 12, 解釋: 1, 2, 3, 4, 5, 6, 8, 9, 10, 12 是前 10 個丑數。
【三指針動態規劃】

給定一個整數數組 prices,其中第 i 個元素代表了第 i 天的股票價格 ;非負整數 fee 代表了交易股票的手續費用。
你可以無限次地完成交易,但是你每次交易都需要付手續費。如果你已經購買了一個股票,在賣出它之前你就不能再繼續購買股票了。

返回獲得利潤的最大值。如輸入: prices = [1, 3, 2, 8, 4, 9], fee = 2
輸出: 8,解釋: 能夠達到的最大利潤:
在此處買入 prices[0] = 1
在此處賣出 prices[3] = 8
在此處買入 prices[4] = 4
在此處賣出 prices[5] = 9
總利潤: ((8 - 1) - 2) + ((9 - 4) - 2) = 8.
【買入賣出的動態規劃】

d16

給定一個數組,它的第 i 個元素是一支給定股票第 i 天的價格。
設計一個演算法來計算你所能獲取的最大利潤。你可以盡可能地完成更多的交易(多次買賣一支股票)。
注意:你不能同時參與多筆交易(你必須在再次購買前出售掉之前的股票)。
如輸入: [7,1,5,3,6,4]
輸出: 7
解釋:
在第 2 天(股票價格 = 1)的時候買入,在第 3 天(股票價格 = 5)的時候賣出,
這筆交易所能獲得利潤 = 5-1 = 4 。
隨後,在第 4 天(股票價格 = 3)的時候買入,在第 5 天(股票價格 = 6)的時候賣出,
這筆交易所能獲得利潤 = 6-3 = 3 。

【同leet714 多次買賣的動態規劃】

是否是相同的樹
【同空、不同空判斷後的自身遞歸】

不特定根節點和葉子節點,返迴路徑總和為固定值的路徑數
【自身遞歸與dfs遞歸】

d17

找出右邊的值小於當前值的數的個數:
使用線段樹構建左右子樹,並從右到左計算前面的數小於當前值的數的個數,最終返回依次進入結果數組的list的倒置值。

【list復製法】
將遍歷到的前兩個和數都去掉,雙重遍歷T(n)= O(n)

規范的路徑表示寫法轉換為最簡路徑
【棧進棧出,判斷'' '.' '..'()】

d18

【復制字元庫,逐次後移匹配庫起始點】

按要求分一個數組為m份,求其中子數組的最大值中最小一個
【二分查找、設定子數組最大的和mid作劃分節點】

【二分思想,拆分數組遞歸】(不用判斷平衡)

d19(52%)

兩個字元串對應位置移動總次數在指定步數內(ascii值的差),求字元串的最大可變換長
【滑窗記錄更新最初位置、不斷更新當前滑窗內移動步數最小值】