回覆列表
  • 1 # RampRamp

    直接上,邊做邊學。可以按照由易到難的題目循序漸進,也可以按照資料結構或演算法分類去練習。總之要做到,瞭解演算法的精髓,同一類題目舉一反三,觸類旁通。

  • 2 # 小羊看科技

    leetcode上的題目大部分是演算法題,資料結構題,而在做演算法題的前提是要對程式語言熟悉,這樣可以在思路清晰的情況下,短時間內運用程式語言已經封裝好的庫,類,等給出最佳的解決辦法。所以要刷leetcode的題首先要對程式語言熟悉,對資料結構熟悉,還有就是增強演算法能力,怎麼增強演算法能力呢?到網上多查詢資料,比如有的leetcode題要利用動態規劃,貪吃演算法,蔡勒公式,矩陣等。個人感覺門坎還是有點高的。當然,這些都是可以經過自己的努力提高和改變的,毅力很重要。

  • 3 # trick12

    基本的資料結構,基本的演算法,去學下吧!再去學個你感興趣的語言!如果單純玩演算法的話,去玩下python吧!簡單!

  • 4 # 你看我獨角獸嗎

    不要在準備工作上花費太多時間。不要在準備工作上花費太多時間。

    如果您花太多時間學習,您將永遠無法解決Leetcode / CTCI問題。相反,如果您在準備工作上花費的時間太少,就會迷失方向。重要的是您要花費適當的時間進行準備工作,以確保您不會浪費時間。

    在執行任何操作之前,請確保閱讀/學習以下主題。學習任何其他內容可能會浪費您的時間。有些人學習的方式超出了他們需要的方式(花式圖演算法,生成樹,A *等),因為他們認為這將使他們成為更好的工程師。我認為那完全是浪費時間。大多數採訪者自己都不記得這些話題。一旦找到理想的工作,就可以自己學習。不要浪費時間。只需關注下面的資料結構和演算法,僅此而已。

    資料結構動態陣列連結串列堆疊與排隊雜湊表二進位制搜尋樹二進位制堆和優先順序佇列圖表

    演算法

    位操作和數字-差異無符號與有符號排序穩定性合併排序快速排序堆排序-就地排序以獲取O(1)空間二元搜尋排列子集BFS圖DFS圖Dijkstra演算法拓撲排序準備工作

    一旦您對上面的資料結構和演算法感到滿意,請多次進行以下練習(至少2–3次),直到您可以閉上眼睛進行練習。

    從頭開始實現ArrayList反向連結列表使用陣列實現堆疊和佇列用簡單的雜湊函式實現雜湊表使用鄰接表實現圖,然後為BFS和DFS編寫函式。遞迴和迭代地編寫二進位制搜尋演算法編寫合併排序演算法編寫快速排序演算法使用DFS(按順序,前順序和後順序-它們全部三個)和BFS二叉樹。

    記住常見演算法的時間和空間複雜性和了解這些重要的位操作技巧。這些可能是你入門生涯中最困難的時刻。一方面,我希望你認真對待所有這一切。另一方面,我希望你意識到自己會記住並珍惜這些時刻。在獲得夢想的工作之後,您實際上會錯過這些艱苦的工作和努力解決演算法難題的寶貴時刻。

  • 5 # 胖叔叔金融

    不需要準備太多,只需要準備個得心應手的編譯器就好了。如果直接在web寫程式碼的話,編譯器也不需要了,直接上手開幹。

    附上我的解題連結,比較懶,刷了400多題,只寫了幾十篇部落格。http://www.iaccepted.net/algorithm/leetcode/170.html

  • 6 # 跟黃哥學程式設計

    先透過一種程式語言學會解決小的問題,再學資料結構與演算法,再刷leetcode。

    特別著急就業的,可以邊刷leetcode 邊學資料結構與演算法。但前提是已經會一門程式語言。

  • 7 # 東哥聊美股

    唉,刷過6,7百道,痛苦的,只有慢慢刷,用python或ruby,至少省30%時間,買個白板寫,買個小mac book。

  • 中秋節和大豐收的關聯?
  • 請問小篆和大篆筆法的區別有哪些?