99国产精品欲av蜜臀,可以直接免费观看的AV网站,gogogo高清免费完整版,啊灬啊灬啊灬免费毛片

網易首頁 > 網易號 > 正文 申請入駐

雷軍挖了個95后天才少女,開出千萬年薪!

0
分享至

專欄:50多種數據結構徹底征服

專欄:50多種經典圖論算法全部掌握

據多家媒體報道,最近雷軍開出千萬年薪招攬了一位95后AI天才少女——DeepSeek開源大模型DeepSeek-V2的關鍵開發者之一羅福莉,她或供職于小米AI實驗室,領導小米大模型團隊。

羅福莉被關注的“傳奇人生”自2019年開始,身為北大碩士的她,因在NLP國際頂會ACL 上發表 8 篇論文(其中2篇一作)而迅速走紅,受到頗多關注。

畢業后,她又加入阿里達摩院機器智能實驗室。羅福莉主導開發的多語言預訓練模型 VECO(同時支持多語言理解和生成的跨語言模型),被納入阿里達摩院深度語言模型體系 AliceMind。



--------------下面是今天的算法題--------------

來看下今天的算法題,這題是LeetCode的第316題:去除重復字母。

問題描述

來源:LeetCode第316題

難度:中等

給你一個字符串 s ,請你去除字符串中重復的字母,使得每個字母只出現一次。需保證返回結果的字典序最小(要求不能打亂其他字符的相對位置)。

示例1:


輸入:s = "bcabc" 輸出:"abc"

示例2:


輸入:s = "cbacdcbc" 輸出:"acdb"

  • 1 <= s.length <= 104

  • s 由小寫英文字母組成

問題分析

這題是讓 刪除字符串 s 中的重復字符,使每個字符只出現一次,需要保證返回結果的字典序最小 ,并且還不能打亂字符的相對位置。

解決思路就是使用一個棧,然后遍歷字符串中的每個字符,如果當前字符在棧中出現了就不用管了,因為每個字符只能出現一次。

如果當前字符在棧中沒有出現,我們就需要把它添加到棧中,添加的時候因為要保證字典序最小,所以要和棧頂元素比較,如果當前字符比棧頂元素小并且棧頂元素在后面還會出現,就把棧頂元素給刪除,接著繼續重復上面的步驟。

舉個例子,比如棧中元素是[a,b,e](右邊是棧頂),當我們添加字符 c 的時候,因為棧頂字符 e 比當前字符 c 大:

1,假設字符串后面還有 e ,這個時候我們就可以把 e 給移除掉,在后面的時候可以在加 e 。

2,假設字符串后面沒有 e 了,就不能把字符 e 給移除,因為移除之后,后面沒有了就沒法在添加了。

這里的關鍵點是怎么判斷后面還有沒有待移除的字符呢?很簡單,我們只需要在開始的時候計算每個字符的個數即可,用掉一個就減去一個。最后棧中的字符就是需要返回的結果,我們還需要把它轉化為字符串。

JAVA:

public String removeDuplicateLetters(String s) {     Stack
         
  stk =  new Stack<>(); // 棧      int[] count =  new  int[ 128]; // 統計每個字符的數量      for ( int i =  0; i < s.length(); i++)         count[s.charAt(i)]++;      // 記錄對應的字符有沒有添加到棧中      boolean[] add =  new  boolean[ 128];      for ( char ch : s.toCharArray()) {         count[ch]--; // 遍歷到當前字符,數量要減1          if (add[ch]) // 如果當前字符已經添加到棧中就跳過              continue;          // 如果當前字符沒有添加到棧中,棧頂字符比當前字符大          // 并且棧頂字符在后面還有,就讓棧頂字符出棧。          while (!stk.isEmpty() && stk.peek() > ch                 && count[stk.peek()] >  0) {             add[stk.pop()] =  false; // 標記為false         }         stk.push(ch); // 把當前字符添加到棧中         add[ch] =  true;     }      // 這里是把棧中的字符轉化為字符串。     StringBuilder sb =  new StringBuilder();      while (!stk.isEmpty())         sb.append(stk.pop());      return sb.reverse().toString(); }

C++:

public:     string removeDuplicateLetters(string s) {         stack

  stk;// 棧         vector

  count(128);// 統計每個字符的數量         for (char ch: s)             count[ch]++;         // 記錄對應的字符有沒有添加到棧中         vector

  add(128, false);         for (char ch: s) {             count[ch]--;// 遍歷到當前字符,數量要減1             if (add[ch])// 如果當前字符已經添加到棧中就跳過                 continue;             // 如果當前字符沒有添加到棧中,棧頂字符比當前字符大             // 并且棧頂字符在后面還有,就讓棧頂字符出棧。             while (!stk.empty() && stk.top() > ch && count[stk.top()] > 0) {                 add[stk.top()] = false;                 stk.pop();             }             stk.push(ch);// 把當前字符添加到棧中             add[ch] = true;         }         // 這里是把棧中的字符轉化為字符串。         string str;         while (!stk.empty()) {             str.push_back(stk.top());             stk.pop();         }         reverse(str.begin(), str.end());         return str;     }



Python:

def removeDuplicateLetters(self, s: str) -> str:     stk = []  # 棧     count = Counter(s)  # 統計每個字符的數量     # 記錄對應的字符有沒有添加到棧中     add = [0] * 128     for ch in s:         count[ch] -= 1  # 遍歷到當前字符,數量要減1         if add[ord(ch)]:  # 如果當前字符已經添加到棧中就跳過             continue             '''              如果當前字符沒有添加到棧中,棧頂字符比當前字符大             并且棧頂字符在后面還有,就讓棧頂字符出棧。             '''         while stk and stk[-1] > ch and count[stk[-1]] > 0:             add[ord(stk[-1])] = 0  # 標記為false             stk.pop()         stk.append(ch)  # 把當前字符添加到棧中         add[ord(ch)] = 1         # 這里是把棧中的字符轉化為字符串。     return ''.join(stk)

筆者簡介

博哥,真名:王一博,畢業十多年, 作者,專注于 數據結構和算法 的講解,在全球30多個算法網站中累計做題2000多道,在公眾號中寫算法題解800多題,對算法題有自己獨特的解題思路和解題技巧,喜歡的可以給個關注,也可以 下載我整理的1000多頁的PDF算法文檔 。

特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相關推薦
熱點推薦
舊衣服別亂捐!民政部新規:捐贈帶這標識衣物=違法,快查衣柜

舊衣服別亂捐!民政部新規:捐贈帶這標識衣物=違法,快查衣柜

小白鴿財經
2025-05-11 10:06:27
恭喜皇馬,名帥加盟將讓球隊巨變,2大天才離隊,2將有望翻身

恭喜皇馬,名帥加盟將讓球隊巨變,2大天才離隊,2將有望翻身

體育全天候
2025-05-10 19:26:14
印媒:印度海軍對巴多目標發動打擊

印媒:印度海軍對巴多目標發動打擊

參考消息
2025-05-09 18:55:07
中美貿易戰再起波瀾?5月11日,今日凌晨的三大重要消息持續發酵

中美貿易戰再起波瀾?5月11日,今日凌晨的三大重要消息持續發酵

風口招財豬
2025-05-11 02:13:37
董潔和潘粵明的兒子頂頂長大了巨帥,這顏值不得在娛樂圈橫著走?

董潔和潘粵明的兒子頂頂長大了巨帥,這顏值不得在娛樂圈橫著走?

觀察鑒娛
2025-05-11 12:25:20
同樣都是兄弟國家,中國可以賣殲10C給巴基斯坦,為何不賣給朝鮮

同樣都是兄弟國家,中國可以賣殲10C給巴基斯坦,為何不賣給朝鮮

生活魔術專家
2025-05-11 10:19:19
勇士1-2森林狼!無解的不是輸球,而是無庫里后勇士發生兩大變化

勇士1-2森林狼!無解的不是輸球,而是無庫里后勇士發生兩大變化

魚崖大話籃球
2025-05-11 16:56:45
鬧心!女孩凌晨3點被閨蜜趕出家 嚎啕大哭!原因曝光,評論炸鍋

鬧心!女孩凌晨3點被閨蜜趕出家 嚎啕大哭!原因曝光,評論炸鍋

行者聊官
2025-05-10 11:30:41
為啥每個人的菊花周圍都有毛毛?

為啥每個人的菊花周圍都有毛毛?

奔波兒灞與灞波兒奔
2025-05-06 21:06:27
嚇死了!寧波女子車里鉆進2米長大蛇,連夜開車沖進消防隊

嚇死了!寧波女子車里鉆進2米長大蛇,連夜開車沖進消防隊

環球網資訊
2025-05-11 07:14:16
媒體人:周琦把自己的傷情&短板和盤托出,容易被廣廈針對性利用

媒體人:周琦把自己的傷情&短板和盤托出,容易被廣廈針對性利用

雷速體育
2025-05-11 09:44:21
最慘天王嫂!方媛自曝結婚7年在港沒房,郭富城把17億交給小美打理

最慘天王嫂!方媛自曝結婚7年在港沒房,郭富城把17億交給小美打理

扒星人
2025-05-10 11:22:46
“偽裝”國貨40年,一年狂賺1046億,日本巨頭竟成了中國茶代表?

“偽裝”國貨40年,一年狂賺1046億,日本巨頭竟成了中國茶代表?

谷盟
2025-05-11 16:04:17
讓張靚穎戴眼鏡的人真是個天才,誰懂推眼鏡那一下

讓張靚穎戴眼鏡的人真是個天才,誰懂推眼鏡那一下

東方不敗然多多
2025-05-10 12:15:59
梅西1098場轟生涯第860球創歷史最快紀錄,C羅1189場時達成

梅西1098場轟生涯第860球創歷史最快紀錄,C羅1189場時達成

懂球帝
2025-05-11 10:58:09
尹中卿同志逝世

尹中卿同志逝世

新京報政事兒
2025-05-10 17:33:14
一晚豪賭輸掉7億美金,挪用公司50億資金消失,現生死不明

一晚豪賭輸掉7億美金,挪用公司50億資金消失,現生死不明

天行艦
2025-05-11 12:46:03
“裸官”麥廣欽,被查

“裸官”麥廣欽,被查

觀察者網
2025-05-11 14:09:07
明明都是兄弟國家,中國可以賣戰機給巴基斯坦,為何不賣給朝鮮?

明明都是兄弟國家,中國可以賣戰機給巴基斯坦,為何不賣給朝鮮?

健身狂人
2025-05-09 21:53:49
2025-2026賽季世界斯諾克巡回賽賽程新鮮出爐,中國有六站賽事

2025-2026賽季世界斯諾克巡回賽賽程新鮮出爐,中國有六站賽事

臨知
2025-05-11 13:06:25
2025-05-11 18:19:00
數據結構和算法
數據結構和算法
專門介紹和寫算法題解的號
227文章數 2關注度
往期回顧 全部

科技要聞

首款折疊屏iPhone,有新消息!

頭條要聞

媒體:印度被巴方打回原形 被迫接受"地區大國"的現實

頭條要聞

媒體:印度被巴方打回原形 被迫接受"地區大國"的現實

體育要聞

分手7年之后,漢堡終于原諒了德甲

娛樂要聞

陳曉東吐槽權志龍演唱會 說實話遭圍攻

財經要聞

重慶一家人把755億巨債留給了股民

汽車要聞

空間表現是優勢 極狐T1將于5月底正式亮相發布

態度原創

教育
手機
家居
藝術
本地

教育要聞

孩子說的有道理嗎

手機要聞

OPPO Reno14 系列手機支持 4K 視頻轉實況照片,5 月 15 日發布

家居要聞

整潔寬敞 黑白木色拼接

藝術要聞

故宮珍藏的墨跡《十七帖》,比拓本更精良,這才是地道的魏晉寫法

本地新聞

非遺里的河南|汴梁鳶舞千年韻!宋室風箏藏多少絕活

無障礙瀏覽 進入關懷版 主站蜘蛛池模板: 伊金霍洛旗| 苗栗市| 成武县| 许昌市| 延庆县| 长春市| 茌平县| 鲁甸县| 西乌| 漠河县| 大同市| 杨浦区| 博爱县| 湘阴县| 会同县| 固始县| 赤壁市| 宁都县| 德兴市| 曲阜市| 古蔺县| 龙州县| 深圳市| 蒙阴县| 西乌珠穆沁旗| 邓州市| 汤原县| 北宁市| 长治县| 聂拉木县| 喜德县| 东阿县| 陵水| 岑巩县| 遂平县| 长岭县| 玛纳斯县| 错那县| 庆云县| 大兴区| 大方县|