趴菜LeetCode刷題——第一天
打算每天做幾道python幾道sql,但具體還不清楚......and由于太菜了,sql應(yīng)該大部分都只是貼貼答案
?
???來源:力扣(LeetCode)
????鏈接:https://leetcode.cn/problems/
????著作權(quán)歸領(lǐng)扣網(wǎng)絡(luò)所有。商業(yè)轉(zhuǎn)載請聯(lián)系官方授權(quán),非商業(yè)轉(zhuǎn)載請注明出處。
# python
1. 一維數(shù)組的動態(tài)和

官方答案:
? ??????關(guān)注一下復(fù)雜度

中途遇到的問題:
????? ? 覆蓋問題:一開始讓dy_sum_nums=nums了,由于共同占用存儲空間,在修改dy_sum_nums時會把nums里面的值也覆蓋掉。
????????丑陋循環(huán)問題
????????變量太多:這一點(diǎn)評論區(qū)有大佬說“感覺修改入?yún)?shù)據(jù)不太好,雖然節(jié)省內(nèi)存開銷,但是在實(shí)際項(xiàng)目開發(fā)中基本上不會去直接改。 最好另外再申請一個新的數(shù)據(jù)來存放結(jié)果。”
自己寫的小垃圾:

2.?不同整數(shù)的最少數(shù)目

官方答案
? ? ? ??運(yùn)用HashMap進(jìn)行映射和次數(shù)統(tǒng)計(jì)?
? ? ????注:k>=occ時,說明此時freq列表中occ所對應(yīng)的數(shù)值x能被完整地剔除,所以讓k = k - occ,表示剔除x后還需要剔除的數(shù)的數(shù)量。

中途遇到的問題與收獲:
? ? ? ? 這題直接不會hhhh,想到的思路是轉(zhuǎn)成dataframe然后統(tǒng)計(jì)頻數(shù),然而貌似不能掉pandas,直接卡掉(不過collections也得掉包啊......只能說官方答案有些離譜。)
????????
??????????HashMap
????????????????可對list中的元素進(jìn)行一一映射,統(tǒng)計(jì)元素的頻數(shù)? ????????

? ? ? ? ??

3. 將數(shù)字變成0的操作次數(shù)

官方答案:
? ? ? ??使用位運(yùn)算
??? ????注:當(dāng)num為奇數(shù)時,先減1再除2總需要兩步。

中途遇到的問題與收獲:
? ? ? ??? ?使用位運(yùn)算能快速判斷數(shù)字的奇偶性
????????? ?????????利用 x & 1 可以判斷奇偶性,為1時為奇數(shù)
???????????使用位運(yùn)算可以進(jìn)行整除
????????????????????x >> 1 相當(dāng)于 x\\2

# sql
1.?組合兩個表


官方答案:
????select 變量1,變量2
????from 表1 各種join 表2
????on 條件(表1.變量)

????????大佬的補(bǔ)充

2.?第二高的薪水

官方答案:
? ? Select distinct 變量1 —— 從變量1中選取唯一不同的值
? ? Select 變量1 as xxx —— 將變量1作為表xxx進(jìn)行儲存
????order by 變量1 desc —— 根據(jù)變量1進(jìn)行排序
????limit m offset n —— 去掉排名 m到n的數(shù)據(jù)
????????

? ? ????大佬的補(bǔ)充

困死了,就這樣吧......