国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Leetcode5 手寫快速排序、合并區(qū)間、重建數(shù)字、字符串排列

2022-01-16 19:29 作者:房頂上的鋁皮水塔  | 我要投稿

放寒假了這幾天,然后回家啥的,有一兩天沒有寫Leetcode hh

手寫快排

手寫快速排序這道題是找出數(shù)組中的第K個最大的數(shù)字中的,但是因為這道題沒有別的多余的技巧,所以主要復(fù)習(xí)一下手寫快速排序。

手寫快速排序主要分成兩個部分。第一個部分是將當(dāng)前由start和end確定的數(shù)組分成兩個部分,通過pivot元素隔開,左邊的部分的所有元素小于pivot,右邊的部分的所有元素大于pivot。然后在分別處理左右兩邊:

同時,還有另外一種排序就是歸并排序。對于歸并排序,先調(diào)用遞歸的當(dāng)時將數(shù)組分解成一個一個的元素(組成的小數(shù)組),然后根據(jù)大小進行合并。在合并的過程中需要使用額外數(shù)組:

合并區(qū)間

這道題思路比較簡單純粹。首先我們將數(shù)組看做一個二元組,根據(jù)每個二元組的第一項進行排序。然后遍歷數(shù)組,對于當(dāng)前的二元組i,他的前一項i-1的第二項小于i的第一項,說明二者存在交集,然后比較i和i-1的第二項,取最大的結(jié)果,合并兩項為一項。存到最后的結(jié)果ans中。每次取出ans和后面的進行對比:

從英文中重建數(shù)字

我個人覺得這道題非常無聊。我第一次實現(xiàn)的時候使用的是hash的方式,記錄數(shù)字0-9的英文的字母出現(xiàn)的次數(shù),然后使用s嘗試減去,這種方式超時了。所以,最后只能使用官方題解的方法,使用特殊元素的方式,比如只有0中包含了z字母,進行推測:

字符串的排列

對于這道題,因為需要比較s1的某種排列在s2中是否會出現(xiàn),很顯然的一條思路是因為在排列前后的字符串的元素組成不會改變,那么,可以通過滑動窗口的方式,比較當(dāng)前的串s1和s2長度為s1.length()的子串的元素是否相同。 具體的操作是通過第一次遍歷,我們可以得出s1的所有字符的hash,后續(xù)每次移動一個字符,進來的字符數(shù)量++,出去的字符數(shù)量--。


Leetcode5 手寫快速排序、合并區(qū)間、重建數(shù)字、字符串排列的評論 (共 條)

分享到微博請遵守國家法律
龙井市| 英山县| 荃湾区| 宾阳县| 九龙城区| 青铜峡市| 博白县| 奉节县| 湘阴县| 大余县| 阿拉善左旗| 朝阳市| 科技| 安新县| 礼泉县| 二连浩特市| 合山市| 台前县| 墨竹工卡县| 阜新市| 阳东县| 衡阳市| 容城县| 凯里市| 招远市| 嵊州市| 资兴市| 固安县| 杭锦后旗| 沂南县| 大兴区| 连江县| 长治县| 重庆市| 开远市| 会东县| 呼图壁县| 凌海市| 西安市| 鸡西市| 道真|