每日算法刷題計劃

這是我每天堅持刷算法題的倉庫,每天刷1-3道,時間30-40min,加油!
目前考慮leetcode+洛谷形式,c++和python3語言,leetcode主要學核心思想,洛谷學會輸入輸出格式
每日打卡:markdown+csdn打卡

刷題策略:

  • 按分類刷;每個分類從 Easy 到 Medium 順序刷;
  • 優先刷題號靠前的題目;
  • 優先刷點贊較多的題目;

大體路線方向由簡入難

在這里插入圖片描述

  • 數學
  • 數組
  • 鏈表
  • 字符串
  • 哈希表
  • 雙指針
  • 遞歸
  • 隊列
  • 圖與回溯算法
  • 貪心
  • 動態規劃

數組-> 鏈表-> 哈希表->字符串->棧與隊列->樹->回溯->貪心->動態規劃->圖論->高級數據結構,再從簡單刷起,做了幾個類型題目之后,再慢慢做中等題目、困難題目。

刷題技巧
1

建議刷題的時候分成四輪來刷,不用想著第一次就把單個分類的全部刷完。

第一輪:
按照 數學 > 數組 > 鏈表 > 字符串 > 哈希表 > 雙指針 > 遞歸 >棧 >隊列 的順序,主要刷:難度簡單,通過率在 50%以上的題目。

第二輪:
按照 數學 > 數組 > 鏈表 > 字符串 > 哈希表 > 雙指針 > 遞歸 >棧 >隊列的順序,主要刷:難度中等,通過率在50%以上的題目

第三輪:
先不要急著刷題,建議找個視頻,把相關算法理論看一遍,比如:什么是分治,什么是貪心,什么是動態規劃,什么是二叉搜索樹,什么是圖等概念。
再把樹 > 圖與回溯算法 >貪心 >動態規劃這些刷一遍,刷的時候還是刷簡單或者中通過率 50%以上的題目

第四輪:
第四輪就比較難了,可以刷剩余困難的,還有以前沒刷的,通過率低于 40%的題目。但是這一輪會非常的難,難以堅持下去。

1

(1)首先,復習數據結構與算法基礎知識,形成完整的算法知識體系,最基本的數據結構,例如鏈表,隊列,棧,二叉樹等至少要先熟練掌握;
(2)接著刷LeetCode前100題,前100題是最為常見的題目,據說刷算法題0-100題是第一道坎,100-300題是第二道坎,那么度過第一道坎就可以讓我們對算法題目有基本的認識,慢慢找到做題的感覺和思路,并擁有一定的做題能力,可以按照鏈表/二叉樹/遞歸等這些標簽來刷;
(3)然后就是算法能力提升階段,要根據專題進行專項訓練,掌握不同的解決問題的方法,并能夠針對具體類別的問題產生相應的解題思路,可以參考下邊專項刷題路線資料分享;
(4)最后就是進一步提高階段,可以采用亂序刷題的方式,可以刷各種面經和高頻題,推薦書籍《劍指offer》,這一階段重在鍛煉在面對不同問題的時候,能夠選擇最為合適的數據結構和算法,進一步加深對于算法的理解,同時拓展常用的算法思想,建立自己的理解。同時學習各種各樣的解題技巧和思路,也要學習相關的數學知識。

三大步驟:

(1)分析題目屬于哪一類題目,大概用到什么數據結構算法,是數組、鏈表、圖、樹?還是用遞歸動態規劃這些方法。常見的算法題目一般只涉及到這幾個方面。
(2)驗證分析階段的思路。注意常見錯誤:變量名寫錯,邊界條件考慮不周。如果調試階段超過寫代碼的30%時間,說明思考過程,方案設計很有問題。先反思分析設計方案除了什么錯誤,思考的不夠系統嗎?不要一邊寫,一邊改方案,這樣效率太低,而且你會逐漸適應低效率的節奏,這個負面影響太大。
(3)作總結,總結很重要。如果沒做出來,反思什么階段犯了錯誤。如果做出來了,思考解題的關鍵點是什么,總結題目特點,一定要總結這個題目屬于哪一種類型,這個題目在這個類型中特點是什么,和其他這個類型的其他題目區別在哪里。只有經過總結,做過的題目才會真正進入你解題思維的一部分,解題能力的一部分。

借鑒書籍和博客

LeetCode 101 - A Grinding Guide.pdf
《算法(第4版)》
《STL源碼剖析》
代碼隨想錄
LeetBook - 力扣(LeetCode)全球極客摯愛的技術成長平臺
題單廣場 - 洛谷 | 計算機科學教育新生態
能力全面提升綜合題單 - 題單 - 洛谷 | 計算機科學教育新生態(較難)

推薦的博客作者有:
負雪明燭:5 年在 CSDN 上更新了 800多道題解,收獲 160萬 閱讀。在中文力扣日更題解。
李威威:中文力扣的大 V,對力扣題目掌握很全面,寫得題解非常詳細,對題目舉一反三。
花花醬:基本每個題都有博客和視頻,強烈推薦看他的視頻。
Grandyang:在博客園更新了幾乎所有力扣題目,收獲了 1200萬 閱讀。

題號

數學相關算法題
2469、2235、2413、2160、2520、1688、1281、2427、728、2119、509、70、
372、7、479、564、231、342、326、504、263、190、191、476、461、477、50、:693、393、172、458、258、319、405、171、168、670、233、357、400

數組相關算法題
2011、1929、1720、2574、1cp01、lcp06、1365、1732、1464、2496、1979、485、495、414、628、645、697、448、442、41、274、453、665、283、118、119、661、598、419、189、396、54、59、498、566、48、73、289、303、304、238

三,鏈表相關算法題
206、203、237、19、430、61、24、、92、25、2、445、21、23

四,字符串
520、125、14、34、58、344、541、557、151、387、389、383、242、49、451、3、、8…13、22、293、3、不8、32、824、號2、83、86、 7、218. 43、 306423、657、551、696、482、6、68、28、686、459、214、5、647

五,哈希表
633、349、128、202、500、290、532、205、166、466、138、1、167、599、219.217、220350、554、609、454、18、560、523、525、594、

六,雙指針
345、680、167、15、16、18、11、42、27、26、80、83、82、611、187643、674、209、3、438、567、424、76、30、86、328、160、88、475、141、142、143234、457、287

七,遞歸
682、71、388、150、227、224、20、636、591、32

九,隊列
933、1700、232、225、2073、387

十,樹
100、222、101、226、437、563、617、508、572、543、654、687、87102、429、690、559、662、671、513、515、637、103、107、257、623、653、104、111、112、113、129、404、199、655、116、117、144、589、606、331、652、297、449
145、590、94、700、530、538、230、98、173、669、450、110、95、108、109、105、106114、235、236、501、99、558、427

十一,圖與回溯算法

565、17、397、526、401、36、37、51、52、77、39、216、40、46、47、31、556、60、491、78、90、79、93、332
241、282、679、22、301、488、133、200、695、463、542、130、417、529、127、126433、675
547、684、685、399、207、210、65、468

十二,貪心
605、121、122、561、455、575、135、409、621、179、56、57、228、452、435、646、406、
48、169、215、75、324、517、649、678、420、53、134、581、152、334、376、659、 343496、503、456、316、402、321、84、85

十三,動態規劃
509、70、338、45、55、198、213、650、91、639、552、123、188、309、32、264、313、403
689、413、446、368、416、279、322、518、474、494、377、62、63、64、120、576、688、221、629、174、96、329、583、72、97、115、516、132、131、139、140、514、10、44
464、691、698、638、473、486、664、375、312、546、337、124、233、600

刷完 900 多道算法題的首次總結:LeetCode 應該怎么刷?_leetcode刷題-CSDN博客

算法刷題路線總結與相關資料分享_刷題算法學習流程-CSDN博客

【LeetCode】力扣刷題攻略路線推薦!適合新手小白入門~(含各類題目序號)_力扣刷題順序-CSDN博客

【LeetCode】代碼模板,刷題必會_leetcode 代碼模版-CSDN博客

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/82547.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/82547.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/82547.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

紅黑樹():

1. 紅黑樹: 紅黑樹從根節點開始的最長的路徑不會超過最短路徑的2倍。 紅黑樹的話,他的結點的分布沒有我們的AVL樹的結點的分布均衡,但是效率也不錯,AVL樹的結點分布的那么均勻,其實也是在進行了旋轉,付出了…

【AI智能推薦系統】第六篇:隱私保護與聯邦學習在推薦系統中的平衡之道

第六篇:隱私保護與聯邦學習在推薦系統中的平衡之道 提示語:?? “數據不出域,推薦更精準!深度揭秘騰訊、螞蟻集團如何用聯邦學習打造合規推薦系統,隱私計算技術全景解析與工業級實現方案!” 目錄 隱私保護的行業挑戰隱私計算技術體系 2.1 聯邦學習基礎架構2.2 差分隱私…

【Qt/C++】深入理解 Lambda 表達式與 `mutable` 關鍵字的使用

【Qt/C】深入理解 Lambda 表達式與 mutable 關鍵字的使用 在 Qt 開發中,我們常常會用到 lambda 表達式來編寫簡潔的槽函數。今天通過一個實際代碼示例,詳細講解 lambda 的語法、變量捕獲方式,特別是 mutable 的作用。 示例代碼 QPushButto…

記錄 ubuntu 安裝中文語言出現 software database is broken

搜索出來的結果是 sudo apt-get install language-pack-zh-han* 然而,無效,最后手動安裝如下 apt install language-pack-zh-hans apt install language-pack-zh-hans-base apt install language-pack-gnome-zh-hans apt install fonts-arphic-uming apt install libreoffic…

[虛幻官方教程學習筆記]深入理解實時渲染(An In-Depth Look at Real-Time Rendering)

原英文教程地址深入理解實時渲染(An In-Depth Look at Real-Time Rendering) 文章目錄 1.Intro to An In-Depth Look at Real-Time RenderingCPU VS GPUDeferred VS Forward 2. Before Rendering and OcclusionCulling計算的步驟使用console command:fre…

Linux進程間信號

目錄 信號入門 生活角度中的信號 技術應用角度的信號 信號的發送與記錄 信號處理常見方式概述 產生信號 通過終端按鍵產生 通過系統函數向進程發信號 由軟件條件產生信號 由硬件異常產生信號 阻塞信號 信號其他相關常見概念 在內核中的表示 sigset_t 信號集操作…

Git簡介和發展

Git 簡介 Git是一個開源的分布式版本控制系統,跨平臺,支持Windows、Linux、MacOS。主要是用于項目的版本管理,是由林納斯托瓦茲(Linux Torvalds)在2005年為Linux內核開發而創建。 起因 在2002年至2005年間,Linux內核開發團隊使…

Perspective,數據可視化的超級引擎!

Perspective 是一個強大的交互式數據分析和可視化庫,它允許你創建高度可配置的報告、儀表板、筆記本和應用程序。給用戶提供了一個新的視角來看待數據。 Stars 數9125Forks 數1217 主要特點 高效流式查詢引擎:Perspective使用C編寫,并編譯為…

MySQL COUNT(*) 查詢優化詳解!

目錄 前言1. COUNT(*) 為什么慢?—— InnoDB 的“計數煩惱” 🤔2. MySQL 執行 COUNT(*) 的方式 (InnoDB)3. COUNT(*) 優化策略:快!準!狠!策略一:利用索引優化帶 WHERE 子句的 COUNT(*) (最常見且…

如何在postman使用時間戳

1. 使用 Pre-request Script 動態轉換? 在發送請求前,將日期字符串轉為時間戳并存儲為環境變量/全局變量。 ?示例代碼? // 將日期字符串(如 "2023-10-01")轉為時間戳(毫秒) const dateString "2…

嵌入式學習筆記 - 運算放大器的共模抑制比

一 定義 共模抑制比(Common Mode Rejection Ratio, ?CMRR?)是衡量差分放大器(或差分電路)抑制共模信號能力的關鍵指標。它在電子工程中尤為重要,特別是在需要處理微弱信號或對抗環境噪聲的場景中。 核心概念 ?共…

成龍電影中的三菱汽車

帕杰羅、 Lancer Evolution、 3000GT Mitsubishi Lancer Evo ll 1995 附錄 Mercedes-Benz 280SL(W113),俗稱“Pagoda”(帕格達)

Spring 項目無法連接 MySQL:Nacos 配置誤區排查與解決

在開發過程中,我們使用 Nacos 來管理 Spring Boot 項目的配置,其中包括數據庫連接配置。然而,在實際操作中,由于一些概念的混淆,我們遇到了一些連接問題。本文將分享我的故障排查過程,幫助大家避免類似的錯…

LabVIEW與 IMAQ Vision 機器視覺應用

在工業生產及諸多領域,精確高效的檢測至關重要。基于 LabVIEW 與 IMAQ Vision 的機器視覺應用,深入剖析其原理、系統構成、軟件設計及優勢,為相關領域工程師提供全面技術參考。 ? 一、技術原理 (一)機器視覺技術基礎…

【STM32 學習筆記】USART串口

注意:在串口助手的接收模式中有文本模式和HEX模式兩種模式,那么它們有什么區別? ??文本模式和Hex模式是兩種不同的文件編輯或瀏覽模式,不是完全相同的概念。文本模式通常是指以ASCII編碼格式表示文本文件的編輯或瀏覽模式。在文…

【WPS】怎么解決“word的復制表格”粘貼到“excel的單元格”變多行單元格的問題

把 word文檔復制表格到這個excel表格上面的話,會出現由單個單元格變成多行單元格的情況。 現在,就這個問題怎么解決,提出了一個方案,就是先查找是什么導致了這個換行,然后再將換行的這個字符進行一個整體的替換&#x…

嵌入式開發面試題詳解:STM32 與嵌入式開發核心知識全面解析

一、STM32 共有幾種基本時鐘信號? 題目 STM32 共有幾種基本時鐘信號? 解答 STM32 包含 4 種基本時鐘信號,分別為 HSI(內部高速時鐘)、HSE(外部高速時鐘)、LSI(內部低速時鐘&…

華為策略路由

路由策略:是對路由條目進行控制,通告控制路由條目影響報文的轉發路徑。路由策略為控制平面。 策略路由:是根據報文特征,認為的控制報文從某個即可轉發出去,不修改路由表。即策略路由為在轉發平面。 路由策略 策略路由…

# YOLOv3:深度學習中的目標檢測利器

YOLOv3:深度學習中的目標檢測利器 引言 在計算機視覺領域,目標檢測是一項核心任務,它涉及到識別圖像或視頻中的物體,并確定它們的位置。隨著深度學習技術的快速發展,目標檢測算法也在不斷進步。YOLO(You …

紅黑樹刪除的實現與四種情況的證明

🧭 學習重點 刪除節點的三種情況紅黑樹如何恢復性質四種修復情況完整可運行的 C 實現 一、紅黑樹刪除的基礎理解 紅黑樹刪除比插入復雜得多,因為: 刪除的是黑節點可能會破壞“從根到葉子黑節點數相等”的性質。刪除紅節點無需修復&#xf…