技能加速:為編程人員推薦的十個優質編程網站
對於軟體開發人員來說,保持編程的競技水平是非常有必要的。
通過解決不同類型的編程難題,迎接不同類型的編程挑戰,不僅能讓你成為處理問題的高手,幫助你了解編程語言的複雜性,還能讓你學習到更多新的演算法,變得越來越優秀。
下面是10個優質的編程網站,有利於幫助大家提高編程技能,準備技術面試,促進大家的職業發展。
1
TopCoder
TopCoder 是最早的在線編程競技平台之一,該網站提供了一系列的演算法挑戰,在這裡,你可以:
使用他們的代碼編輯器直接進行在線作答。
參加該網站舉辦的 SRMs 挑戰項目。該比賽將會在每月定期舉辦,作為參賽者,你需要以最快的速度,與眾多其他的編程挑戰者進行比拼。
他們還會贊助競賽,如果你寫出最好的解決方案,就可以拿到獎勵!
2
HackerRank
HackerRank 側重於「計算機科學」主題,在演算法、數學、SQL、函數式編程、AI 等眾多不同領域為挑戰者們提供了相應的編程題目。在這裡,你可以:
直接在線完成挑戰在線。
HackerRank 針對每一項挑戰都專門成立了討論區與排行榜。而它提供的大多數挑戰都來自於社論,讓你了解挑戰內容的同時,思考如何提出解決方案。並且除了挑戰對應的這篇社論,你目前無法查看其他挑戰者在 HackerRank 上的解決方案。
3
LintCode
LintCode 收集了網上一些最常見、最高頻的編程題目,支持中英雙語:
相比其他的一些網站,LintCode 的編程挑戰覆蓋的領域更多,包括演算法、數據結構,人工智慧,系統設計等眾多領域。
如果你在準備軟體工程面試,在 LintCode 刷題是很有幫助的,它的每道題都有詳細的解答,能幫助你更好地理解。
LintCode 有一個模擬面試專欄,精選 Facebook, Amazon, Google, Linkedin 等IT企業的面試題,真實還原面試流程,專門為求職者準備。
LintCode 有《Cracking the Coding Interview》《劍指offer》等演算法學習書籍的配套習題庫,可供初學者練習。
LintCode 還有自己舉辦的編程比賽,很多演算法愛好者會在這裡PK,切磋技藝。
4
GeeksforGeeks
對於「演算法和數據結構」主題,GeeksforGeeks 有很多很好的文章、解釋和代碼解決方案。在這裡,你可以:
在在線編輯器中進行挑戰。
在該網站的代碼解決方案中,你會看到解題者是如何將一個複雜的問題分解成更簡單的部分,並提出代碼解決方案的。
如果你正在準備一個軟體工程的面試,也可以用這個網站準備和複習更難的演算法問題。
5
Coderbyte
Coderbyte 提供了200多種編程挑戰。在這裡,你可以:
使用10種編程語言中的一種進行在線挑戰。
看到網站發布的大多數挑戰的官方解決方案。
查看該網站其他80萬用戶為同一挑戰提供的解決方案。
除了編程挑戰之外,Coderbyte 還提供演算法和數據結構、Web開發等編程訓練營的預備課程以及一系列關於面試準備的相應課程,被很多頂級編程訓練營所推薦。
6
Codewars
Codewars提供了大量由他們自己的社區提交和編輯的編程挑戰,在這裡,你可以:
使用多種編程語言像打遊戲升級一樣進行挑戰。
通過在線編輯器直接完成每項挑戰。
通過實戰訓練來提升編程開發技能。
查看關於每個挑戰的討論以及每個用戶解決方案。
通過挑戰來獲得分數和排名。
7
CodeFights
CodeFights提供了一組編程挑戰,在這裡,你可以:
在在線編輯器中進行挑戰。
在專門的用戶挑戰論壇中參與討論。
與「機器人」比拼!
8
CodinGame
CodinGame這個網站很特別,他跟一些競爭性編程網站有所不同。它不是簡單地通過生成一組輸出來實現編程挑戰,而是以玩遊戲的方式通過在線編程完成相應挑戰。這是一個很棒的網站,有些遊戲非常有趣,並且遊戲界面和圖形設計非常精美。
9
CodeChef
CodeChef是一家印度的編程競賽網站,它提供了數百個挑戰供你選擇。在這裡,你可以:
通過在線編輯器來進行編程。
根據自身的編程能力,選擇不同技術等級不同類別的編程挑戰。
在他們建立的程序員社區中進行交流並為論壇編寫教程。
參加 CodeChef 的編程競賽。
10
Codeforces
Codeforces 是一家總部位於俄羅斯的競賽編程網站,它會定期舉辦在線比賽,並且競賽選手是世界上一些最優秀的程序員。他們的挑戰通常需要用到高等數學和演算法,如果你是一個編程新手,他們的挑戰很可能對你來說難度比較大。


※莊子筆下的三大人生定律,讀懂後什麼都看開了
※實施建議:如何設計微服務?看看構建持久 API 的7大規則
TAG:3T趣未來課堂 |