日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

【算法基础】坚持刷题678天的感受!

發(fā)布時(shí)間:2025/3/12 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【算法基础】坚持刷题678天的感受! 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

作者:胡來,中山大學(xué),Datawhale成員

通過自己678天的刷題,不斷總結(jié)自己和別人的經(jīng)驗(yàn),有以下幾點(diǎn)感受與大家分享。

弄清楚為什么要刷題?

刷題的原因各種各樣,結(jié)合本人和朋友的經(jīng)歷,以及網(wǎng)上大家的分享,比較有代表性的原因有以下四種:

  • 找工作。當(dāng)下找工作的氛圍下,不管是社招,還是校招,都不可避免的會(huì)有上機(jī)考試或者面試時(shí)手撕代碼。

  • 自我能力提升。畢竟在學(xué)完相關(guān)的理論知識(shí)后,還是需要結(jié)合實(shí)際的編程,將理論很好的掌握,也是進(jìn)一步強(qiáng)化對(duì)編程的熟悉程度、提升自己的能力。

  • 編程大賽/考試?,F(xiàn)在LeetCode的每周競(jìng)賽、ACM大賽、藍(lán)橋杯和各種極限編程大賽,以及計(jì)算機(jī)二級(jí)考試、PAT考試、課程的上機(jī)考試、計(jì)算機(jī)方向考研或者保研復(fù)試的上機(jī)考試等,這些都對(duì)編程有著一定的要求,促使大家去刷題,提升自身能力,在競(jìng)賽或考試中取得理想的成績(jī)。

  • 興趣愛好、放松,提升自信心。有些人喜歡編程,還有些人拿刷題作為一種放松(……),再或者是在其他方面沒有信心但是在編程上很擅長(zhǎng),進(jìn)而通過刷題來提升一下自己的信心。

  • 不管何種理由都促使我們?nèi)ニ㈩},只有在刷題前搞清楚自己是為了什么,這樣才會(huì)有更多的動(dòng)力去刷題。

    刷題前需要做哪些準(zhǔn)備?

    • 有一門熟悉的編程語言。個(gè)人推薦C++或者Java。

    • 了解基本數(shù)據(jù)結(jié)構(gòu)和常用算法

      A. 基本的數(shù)據(jù)結(jié)構(gòu)包括:棧、隊(duì)列、鏈表、樹、堆等;

      B. 常用的算法:動(dòng)態(tài)規(guī)劃、分治算法、貪婪算法等。

    • 基本知道如何入手進(jìn)行算法設(shè)計(jì)和分析

      A. 算法設(shè)計(jì):可以根據(jù)要求設(shè)計(jì)完成相應(yīng)任務(wù)的算法;

      B. 算法分析:給出一個(gè)算法可以從時(shí)間復(fù)雜度和空間復(fù)雜度進(jìn)行分析。

    小白如何刷題?

    根據(jù)刷題的目的不同和刷題中會(huì)遇到的問題,分為三個(gè)部分,具體如下:

    1. 目的:建立扎實(shí)的Coding能力

    推薦刷LeetCode中的題目作為練習(xí)和提高,目前已有題目2094道。

    具體執(zhí)行為

    ① 掌握一門基本的編程語言,推薦Java和C++;

    ② 按照特定模塊進(jìn)行系統(tǒng)性刷題。(千萬不要簡(jiǎn)單地按照easy, mid, hard的順序來隨機(jī)刷題); ? 具體按照哪一種模塊的順序刷題可以參考刷題的知乎問答(鏈接:https://www.zhihu.com/question/36738189)

    ③ ?必須要反復(fù)刷題,做到一題多解(時(shí)間允許分析每一種解法復(fù)雜度),而且不能只盯著高頻題目;

    ④ ?具體刷題時(shí):一看二抄三改四寫;

    ⑤ ?現(xiàn)在LeetCode有上千道題,每個(gè)部分一定要找有代表性的題目去做,而且在刷題過程中會(huì)有模板去套用。

    2.目的:建立求職面試的解題思維

    推薦刷《劍指OfferⅡ》,其中一共75道題,但是設(shè)計(jì)各種變形。建議刷至少3遍。

    具體執(zhí)行為

    第一遍,不需要死磕,但是要完全弄懂題目,必須看題目的分析。

    第二遍,進(jìn)一步熟悉題目,對(duì)于一道題的各種變形也可以做出。
    第三遍,對(duì)于這不到100道題和一些相應(yīng)的變形已是特別熟練的狀態(tài),上機(jī)編程沒問題,手撕代碼也是ok的。

    3.目的:解決可能的問題

    A. 可能會(huì)遇到的問題

    ①刷過的題老是忘、②刷題的速度很慢、③堅(jiān)持不下來

    B. 對(duì)應(yīng)決方案:

    ①及時(shí)重復(fù)、與人分享,以及做筆記;

    ②制定計(jì)劃、分解計(jì)劃、快速刷題(為了節(jié)約時(shí)間,五分鐘沒有思路,就別浪費(fèi)時(shí)間了。明確認(rèn)知,這個(gè)和高考刷題沒什么區(qū)別,理解不了,先背下來。);

    ③為自己制定獎(jiǎng)懲措施,或者組隊(duì)刷題。

    小白刷題法

    刷題資料整理

    根據(jù)本人的經(jīng)驗(yàn),再結(jié)合網(wǎng)上大家的分享,有一些書籍和網(wǎng)站,以及其他的網(wǎng)絡(luò)資源可以推薦給大家。

    1.書籍

    《大話數(shù)據(jù)結(jié)構(gòu)》、《啊哈!算法》、《圖解算法》

    2.刷題網(wǎng)站

    LeetCode、???、PAT

    3.其他網(wǎng)絡(luò)資源

    ① https://github.com/liuchuo

    ② ?https://leetcode-cn.com/circle/discuss/nRXySQ/

    ③ ?https://github.com/Jack-Cherish/LeetCode

    ④ https://www.mdeditor.tw/pl/gmDL

    ⑤ https://labuladong.gitbook.io/algo/

    最重要的一點(diǎn)

    掌握理論固然重要,更重要的還是要?jiǎng)邮謱?shí)踐。

    重要的事情說三遍:Coding、Coding、Coding

    最后送給大家我很喜歡的一句話:日拱一卒 功不唐捐

    往期精彩回顧適合初學(xué)者入門人工智能的路線及資料下載機(jī)器學(xué)習(xí)及深度學(xué)習(xí)筆記等資料打印機(jī)器學(xué)習(xí)在線手冊(cè)深度學(xué)習(xí)筆記專輯《統(tǒng)計(jì)學(xué)習(xí)方法》的代碼復(fù)現(xiàn)專輯 AI基礎(chǔ)下載機(jī)器學(xué)習(xí)的數(shù)學(xué)基礎(chǔ)專輯溫州大學(xué)《機(jī)器學(xué)習(xí)課程》視頻 本站qq群851320808,加入微信群請(qǐng)掃碼:

    總結(jié)

    以上是生活随笔為你收集整理的【算法基础】坚持刷题678天的感受!的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。