TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Consider Yourself a Developer? You Should Solve the Project Euler Problems

32 点作者 pps超过 6 年前

18 条评论

AceJohnny2超过 6 年前
I used Project Euler as a framework of problems when I was learning Go. The experience disenchanted me from the value of Project Euler for that purpose.<p>Project Euler is more about mathematical problems that you need to apply some generic algorithmic concepts but more importantly mathematical thinking to. It didn&#x27;t drive me to exercise anything particular feature of the language I was using. I used it with Go, but I just as well could&#x27;ve used C, or Python. Which is part of Euler&#x27;s point, really: not to be linked to a particular language.<p>I didn&#x27;t complete 50 exercises however. I think I reached in the low 20s, stopping at a problem that involved Pascal&#x27;s Triangle [1]. By that point, all problems had exercised mathematical ability, and none of my programming ability, which is why I stopped.<p>Maybe further exercises provide more of a programming challenge?<p>[1] <a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Pascal&#x27;s_triangle" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Pascal&#x27;s_triangle</a>
评论 #19175781 未加载
评论 #19175776 未加载
评论 #19176372 未加载
clem超过 6 年前
Consider yourself a goal-post mover? You should post an article detailing arbitrary gatekeeping exercises that separate yourself from the chaff.
SketchySeaBeast超过 6 年前
I found the Euler problems to quickly become too difficult to suss out if someone doesn&#x27;t have a strong math background. While I did enjoy the first couple dozen, it quickly left me in the dust just because I didn&#x27;t understand all the notation and concepts at play.
评论 #19175964 未加载
评论 #19175665 未加载
civilian超过 6 年前
Counter to some of the other posters, I got a lot of value out of doing 50 Project Euler problems when I was learning python. (I don&#x27;t have a strong math background-- I took Calc in college and majored in biochemistry.)<p>I agree that PE problems aren&#x27;t the best are getting familiar with the whole language, but you&#x27;ll own the math, array, loop, and recursive nature of whatever language you do the first 50 problems in.<p>My math-major buddy solved the first 20 or so PE problems using _excel_. His &quot;loop&quot; was just him dragging in excel to duplicate a recursive excel equation.<p>I think the problems are very do-able by noobs looking to learn some aspects of a language. And you get a sweet badge when you do it: <a href="http:&#x2F;&#x2F;projecteuler.net&#x2F;profile&#x2F;civilian.png" rel="nofollow">http:&#x2F;&#x2F;projecteuler.net&#x2F;profile&#x2F;civilian.png</a><p>If you&#x27;re getting bogged down in the algorithms aspect of PE, then I highly recommend taking the Stanford Algorithms course: <a href="https:&#x2F;&#x2F;lagunita.stanford.edu&#x2F;courses&#x2F;course-v1:Engineering+Algorithms1+SelfPaced&#x2F;about" rel="nofollow">https:&#x2F;&#x2F;lagunita.stanford.edu&#x2F;courses&#x2F;course-v1:Engineering+...</a>
oxymoron超过 6 年前
I’ve completed 120 of them or so. It’s definitely true that most of then are more challenging in terms of mathematics than programming, but there are plenty of exceptions. That said, I don’t think people without a math background should get discouraged. The math required is mostly of the type that few people are taught in school (number theory in particular) which means most people working through these problems are probably going to be encountering many concepts for the first time. Playing with the problem, getting a feel for it, and discovering neat facts through exploration, that’s the real beauty of Project Euler. It really is a pretty amazing experience.
Doctor_Fegg超过 6 年前
Modern cycling evangelism differentiates between a “cyclist” (someone who defines themselves by their mode of transport) and a “person on bike” (someone who just uses a bike as the most practical way to get places). The implication is that we’ll build better towns by providing infrastructure that works for people on bikes, not just for self-identified cyclists.<p>So, “consider yourself a developer?”. No, not really. I’m just a person who codes.
评论 #19176024 未加载
Datenstrom超过 6 年前
A lot of sentiment here seems to be that Project Euler is more about math than programming. I feel like that depends on ones definition of the term programming. Computer science of course has nothing at all to do with computers as it only asks the question &quot;What can be computed?&quot; and Project Euler is very much in this spirit just as Knuths &quot;The Art of Computer Programming&quot; is. For example many of the problems require you to use specific algorithms to find an answer in polynomial time.<p>If you define programming as software engineering then of course Project Euler is mostly irrelevant. But computer science is math, not software engineering.
infecto超过 6 年前
I have limited exposure to the problems but the few times I took a stab at them I found the problems to be more centered around math theory and less computer science. Sure there might be some basic optimizations to be made but at some point it was about understanding the math. I don&#x27;t think its necessarily helpful as a developer.<p>EDIT: I find it much more useful to run through building basic data structures and writing base algorithms (like sorting) in a new language.
Madmallard超过 6 年前
I don&#x27;t think solving project euler problems will make you any better at being an effective programmer for pretty much anything except maybe game programming or other really mathy puzzly programming
bsamuels超过 6 年前
Project Euler is great for teaching yourself all the parts of programming that you will never use in the real world.<p>On the flip side, it&#x27;s a fantastic exercise for learning how important time complexity can be, but again, 99% of real world programming is CRUD.
zorronimous超过 6 年前
Create your own &quot;problem&quot; and post it to Reddit. Its fun seeing people strugle and to see creative solutions. Here is mine<p><a href="http:&#x2F;&#x2F;go-here.nl&#x2F;the-rabbit-problem" rel="nofollow">http:&#x2F;&#x2F;go-here.nl&#x2F;the-rabbit-problem</a>
pan69超过 6 年前
I&#x27;ve been a professional software developer for over 25 years and in that time I have seen very few &quot;computer science&quot; related problems that needed solving.<p>Sure, it depends what type of work you do. E.g. if you work on limited power embedded devices for the medical industry your work as a developer will probably lean more towards the comp-sci end of the spectrum whereas if you&#x27;re building snazzy browser based UI&#x27;s with React.<p>How well you perform with Project Euler problems has absolutely nothing to do with how great a developer you are or whether or not you could consider yourself a developer because of it.
klyrs超过 6 年前
Reading the comments as a mathematician... yup they&#x27;re tough and require enough knowledge that I know they&#x27;ll be challenging the next time around.<p>Reading this as a computer scientist: Knuth is where the education is at. And like project Euler, don&#x27;t feel bad if you miss a few of the hard ones.<p>I was trained in computational number theory, and when I used them to teach myself ruby, and I stopped when I got comfortable enough with the language to find the problems tiring
dccoolgai超过 6 年前
Project Euler is cool, but sometimes I worry about the proliferation of these &quot;No True Scotsman&quot; statements.
taddevries超过 6 年前
Have a look at the Online Judge [1]. I&#x27;ve worked through a handful of these problems and they are good for forcing you to understand the problem and not over solve things.<p>[1] <a href="https:&#x2F;&#x2F;uva.onlinejudge.org" rel="nofollow">https:&#x2F;&#x2F;uva.onlinejudge.org</a>
berbec超过 6 年前
&quot;Lombardi’s ruthless focus on the fundamentals made him the winningest coach in the history of football, with more championships (5) than any other coach in history.&quot;<p>Much as I hate everything he stands for, there is a certain hoodie-wearing punk that disproves this.
jhowell超过 6 年前
&gt; Lombardi’s ruthless focus on the fundamentals made him the winningest coach in the history of football, with more championships (5) than any other coach in history.<p>Needs and update
karmakaze超过 6 年前
Obligatory recommendation for the Structure and Interpretation of Computer Programs (SICP). It not only gets deep into programming fast, it really shows you what a program actually is, or can be.<p><a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Structure_and_Interpretation_of_Computer_Programs" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Structure_and_Interpretation_o...</a><p>Edit: Also +1 for Advent of Code