Basic编程/算法概念 [英] Basic programming/algorithmic concepts
问题描述
我即将开始(与其他程序员)编程和放大器;算法俱乐部在我读高中。选择的语言是C ++ - 抱歉,我无法改变这一点。我们可以假设学生很少在上述议题没有经验。
I'm about to start (with fellow programmers) a programming & algorithms club in my high school. The language of choice is C++ - sorry about that, I can't change this. We can assume students have little to no experience in the aforementioned topics.
你认为什么是最基本的概念,我应该注重?
What do you think are the most basic concepts I should focus on?
我知道,教的东西,是已经明显对我来说不是一件容易的事。我认识到了第一次会议应给予一个极端重视 - 不要吓唬学生了 - 所以我问你
I know that teaching something that's already obvious to me isn't an easy task. I realize that the very first meeting should be given an extreme attention - to not scare students away - hence I ask you.
编辑:我注意到,可能是程序员和初学者之间的主要区别是思维的程序员的方式 - 我的意思是,概念化的问题,你知道的,算法。我知道这只是一个实践问题,但你知道任何形式的演习/概念/件事情可以促进这方面的发展?
I noticed that probably the main difference between programmers and beginners is "programmer's way of thinking" - I mean, conceptualizing problems as, you know, algorithms. I know it's just a matter of practice, but do you know any kind of exercises/concepts/things that could stimulate development in this area?
推荐答案
使编程的乐趣!
可能的事情要谈会编程竞赛,要么你会把持不住自己,也可能在当地进入研究。我逐鹿的编程竞赛在大学(ACM)的水平,我知道一个事实,即他们有他们在较低的水平,以及。
Possible things to talk about would be Programming Competitions that either your club could hold itself or it could enter in locally. I compete in programming competitions at the University (ACM) level and I know for a fact that they have them at lower levels as well.
这些类型的活动能吸引一些有竞争力的精神,创造了俱乐部的成员更加紧密。
Those kind of events can really draw out some competitive spirit and bring the club members closer.
事情并不总是必须是有关编程两种。或许,建议有,你玩游戏的局域网聚会,讨论编程等可能是一个不错的主意为好。
Things don't always have to be about programming either. Perhaps suggest having a LAN party where you play games, discuss programming, etc could be a good idea as well.
在实际的主题方面走过去的是编程/算法有关,我建议为一组尝试一些在这个编程竞赛底漆这些编程问题的的编程挑战的:亚马逊链接
In terms of actual topics to go over that are programming/algorithm related, I would suggest as a group attempting some of these programming problems in this programming competition primer "Programming Challenges": Amazon Link
他们开始用相当基本的编程问题,慢慢进展到需要不同的数据结构类似的问题:
They start out with fairly basic programming problems and slowly progress into problems that require various Data Structures like:
- 栈
- 队列
- 字典
- 树
- 等
大多数的问题都给出了C ++。
Most of the problems are given in C++.
最后,他们进步入涉及图的遍历和流行的图形算法更先进的问题( Dijkstra的等),Combinatrics问题,等等。每一个问题很有趣,鉴于小故事之类的格式。虽然被警告,其中一些是非常辛苦!
Eventually they progress into more advanced problems involving Graph Traversal and popular Graph algorithms (Dijkstra's, etc) , Combinatrics problems, etc. Each problem is fun and given in small "story" like format. Be warned though, some of these are very hard!
编辑: 比萨和苏打从未伤害任何时候,它会得到人们展现了你的俱乐部会议。我们ACM俱乐部有比萨饼每次会议(每月一次)。虽然我们大多数人仍然显示这是一个很好的破冰。特别是对于新的俱乐部或成员。
Pizza and Soda never hurts either when it comes to getting people to show up for your club meetings. Our ACM club has pizza every meeting (once a month). Even though most of us would still show up it is a nice ice breaker. Especially for new clubs or members.
这篇关于Basic编程/算法概念的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!