Monday, July 05, 2010

What algorithms should new CS students learn first?

Back in my college days, I tutored a lot. I actually paid my way through college by teaching computer programming to many students. At last count, I think I have taught C, C++, and Java to almost 150 students in total. And along the way, I taught them the basic algorithms they could test out.

Which brings on the question: what algorithms should newbies learn first?

From my experience, I think first-timers ought to start learning simple things (such as finding the maximum of three numbers), then progress towards slightly complex versions of these problems (such as finding the maximum of n numbers). Then they should focus on things such as finding the GCD using Euclid's method; Binary search, etc. Sorting can come next, and I started teaching my students Bubble sort (yes, I know, it's the worst performance algorithm, but easy for people to grasp, compared with Quicksort!!).

Once the students master searching, sorting, max-mins etc., I then taught them recursion. It was quite fun to teach them recursion using the analogy of a staircase ... you go down the stairs, doing something in each step as you go down and then return (or doing something in each step on your way up).

Bernhard Koutschan recently posted a list of the most important algorithms. (thanks to Daniel Lemire for pointing it out). Among my favorites for first-timers, only 2 made that list (Euclid's GCD, binary search). The rest of the algorithms in that list are a bit complex for the newbie CS students to grasp in their first semester ... at least that's what I felt during my tutoring days.

Lemire has also posted a shorter list of the 5 most important algorithms, along with a poll, in his blog. It will be interesting to see what shortlist people come up with.

54 comments:

imyousuf said...

Could not agree more! I found the same sequence helpful as well. These algorithms are particularly good to grasp the different control flows of a programming language.

insaf-academy said...

hi ragib bhai,
hope 2 fine...
wanna to be introduce here.... my blog link is http://hopefull4ever.blogspot.com/

Faisal Kaiser said...

Nice blog Ragib Bhai, this is Faisal kaiser (Robin) {ex collegiate(batch-95) & BBC high school, ctg}, one of your junior school mate and fan.

Unknown said...

basic algo is you learn than it going to help all the time..

ASUS Router Setup

Walking Sticks said...

Wow ragib bhai....Mast blog hai...

batterie ordinateur portable said...

nice your blog and very nice dear your blog Ranking is too Good we like its you

can see our also website for online shopping......

BatterieOrdinateurPortable.org - AGO Technologie est speialis dans la vente ordinateur portable, Ordinateur, piles et le Chargeur. Nous offre Batterie Ordinateur Portable, Batterie Ordinateur Portable Sony, batterie Ordinateur Portable Dell, Chargeur Ordinateur Portable Sony, Chargeur Ordinateur Portable Hp et Chargeur Ordinateur Portable IBM http://www.batterie-ordinateur-portable.org

John said...

Very good blogging,
Utah SEO Adaptivity Pro premier seo services provider based in Utah.

seema said...

nice....!

Tawhid said...

সচলায়তনের একটি পোস্টে আপনার মন্তব্যের সূত্র ধরে অত্যন্ত সম্মৃদ্ধ ব্যক্তিগত ওয়েবসাইট ও এই ব্লগের খোঁজ পেলাম। আপনার অর্জনগুলো দেখে একজন বাংলাদেশী হিসাবে গর্ববোধ হচ্ছে। ভাল থাকুন।

Rehan said...

The study of computer science can cover a broad spectrum of computer training, and there are many different choices when researching Computer science courses in philippines

M. said...

I quite like that stairway idea of yours. I'll be sure to use that when coaching people doing recursion.

Thanks!

SEO Services company said...

CS 332: Algorithms

Panama abogados said...

Thanks for your nice sharing. I hope you keeping update youre blog always.

Christian Jenny said...

What a great post! I really enjoyed reading this. Thank you for sharing this valuable information with us. I have bookmarked this site and will be sure to check for updates. Keep up the good work!

Doridro BD said...

Sir, If you please share your knowledge then it would be great for all of Bangladeshi !

Two Steps From Home said...

Hi Ragib Bhai
Your post is so useful. This very helpful for everyone.
Thank you.

My Complaint said...

This is the Basement of a programer. So your post is so useful. Thanks.

comnetscience said...

This article is very helpful .. I think a new programmer needs to know

Bristlecone Pines said...

Your article is really helpful for a Computer Student. You should continue your writing.

Trees Planet said...

og 836You are a wonderful writer. Your post is so helpful. But why stop writing please keep it up.

Geeks Fix It said...

Great information…This is certainly distinctive. An stare upon those content articles and we are baffled. We’re interested in this kind of activities

best residual income businesses said...

Your article is really helpful for a Computer Student. You should continue your writing. Thanks for sharing your precious comprehension With us.

Ashish Mishra said...

I totally in your side because as a student of Computer Science I think that it is good to start from a simple one and should go forward. This will help in exams also and by this better understanding of topics.
Computer Science Homework Help provides the all in one assignment solutions that is helpful for every students

Hassanuzzaman said...

Good ! I always try to read ragib and his blog. This article is very helpful to know more about programmed. Thank you for sharing this to us.

Rustam Sayal said...
This comment has been removed by the author.
Unknown said...

nice post and very useful also.

BUY USA FACEBOOK LIKES

Firoz Khan said...

home air conditioning Oxford-Crystal Sigma Ltd provides home air conditioning Oxford, office air conditioning in Oxford. We cover all areas of Oxford and offer all our specialist services in air conditioning.

Unknown said...

SHOPPING ONLINE CLOTHES
online bet basketball
thanx to share with us

Unknown said...

Pool safety inspector - Pool Inspectors with over 1000 pool safety inspections worth of experience - Comply with new Qld Pool Safety Regulations. QLD pools must now meet new compliance standards when sold or leased.

Construction Project Technical Support - Construction projects generate volumes of information on a regular basis. Contact us for Construction Project Technical Support and Project Documentation

Unknown said...

Luxury Hotel in Dubai - If you’re suddenly in the mood for a restful luxury escape to pamper your body, to treat your palate to a luscious fine dining restaurant meal, or to simply enjoy a glorious time of luxury, then choose one among many of our highly recommended luxury hotels that has Dubai's best luxury experience offerings. Luxury Hotels Dubai

Saree Design said...

See Saree Design

Anonymous said...

It's hard to learn this languagesbut I'ts fun right.

Anonymous said...

One of the brightest student of this institution and this is why he is on the top listed and every teacher expected he will do better in future. website to see more about the wrting tips.

Online Study Care 24 said...

I came here to visit your blog. You have a nice blog and I also visited it then read some of your blog post. I am leaving my blog link below, you are requested to visit my blog and please leave your comment if you can.
Thanks.
English Grammar College

Brother Printer Repair Support Service said...

Hey are you getting issues with your printers don't worry. Just call Brother Printer Repair Support Service | +(1)-888-846-5560 ( Toll Free ) Number. we provide best technician support team. you will get to discuss your issues with industry experts for all your printer related issues.

Antivirus Support Number said...

We are providing the best Microsoft Customer Support in the USA. Is your device is in trouble? Just Call Us at Microsoft Office Technical Support Number +(1)-844-489-7268 for immediate action will be taken from our side.
Microsoft Office Support Number
Microsoft Technical Support Contact Number
Microsoft Office 365 Support Number

kaspersky antivirus support said...

Kaspersky Antivirus Support. Number is ensure your PC information and Internet security from programmers. In any case users face some issue while using this software, at that point you can get in touch with us on our toll free +1-8444897268 Number.our expert complete guide you about Antivirus.

buffalo router support number said...

We are a router repair services provider based in the USA which confers the best and 24/7 world-class services. Whenever you need help regards your router related issues then you can call your ( Toll free )buffalo router support number +(1)-888-846-5560. we are here to help you by providing you 24x7 services.

Anonymous said...

If Webroot antivirus needs a fix then, in that case, it is advisable that the user gets connected with the team of trained and certified experts at
Webroot Antivirus Support Number +1-866-272-9202.

Anonymous said...

If you need technical support from experts then contact us at kaspersky tech support phone number

https://bdhealthe.com said...

That a very good

sam said...

Thank you for this post. Good luck.
web design company largo fl
web design and development company largo fl

HP Printer Repair Los Angeles said...

It is a very useful blog for me. Thanks for sheering this blog. If you are looking Printer Repair Los Angeles So please visit our website..https://www.printerrepairinlosangeles.com/

MBBS Abroad said...

Very nice informative post that too from mentors part, this expression of thought in such an easy language always comes from bundle of years of experience. Loved reading your post, its worth sharing. For making a hay while sun shines this time is to hone your skills. You will be surprised about MBBS in the Philippines once you make your mind to for medical studies abroad.

malaivelsiddha said...

Nice post!Thanks for sharing your information.
hiv aids treatment in mumbai
hiv positive treatment in india

Saccharum Safari said...

Best Resort In Kanha National Park | Kanha Tiger Reserve Hotels | Saccharum Safari Lodge

Looking to visit Kanha Tiger Reserve Hotels? Saccharum Safari Lodge is the Best Resort in Kanha National Park. Get in touch with nature in its truest form and experience peace & serenity like never before.

Accommodation In Kanha National Park


Podar Smarter Schools said...

Tips to choose Best School Franchise In India

Often students complain about choosing the wrong school and they also regret the teaching methods. The situation arises when you make decisions in haste. But there are some factors you need to consider before paying the administration fees for coaching classes:

Online platform for lectures- thanks to a pandemic that is quite contagious and harmful and students shouldn't be exposed to the harmful disease without a doubt. To stay safe during the pandemic phase you should ensure that the coaching facility offers online classes and assessments, and they should also offer all the study materials so you can be prepared for the test in the best possible way. You should choose a coaching center that relies on the best technology features so you can prepare and study well.

Study materials- one thing you shouldn’t compromise on when considering the cbse school curriculum is study materials. Study materials play a crucial role irrespective of the fact that you attend regular classes. Notes have your back when you have missed a topic or have forgotten about some chapter. It is a big deal to clear the competitive exam so it is quite vital to indulge in proper learning techniques like perfect time management skills.

Different learning methods- when it comes to choosing the best cbse school you need to ensure that you consider the learning methods provided by the coaching center. Hence you should choose the one which aligns with your needs.

Distance management- when students lack time management they tend to fail in exams and the main reason is the distance between the institute and home. Wasting time isn't feasible while you are preparing for the exam.

Experience matters- experience matters the most in the medical niche and any coaching institute with just one or two years of experience may not be able to guide the students in the right way.

mbbsinabroad said...

Best things about St. Paul University, Philippines


St. Paul University Philippines
possesses the history of the last 112 years. And during these times, more than seven thousand undergraduate students came across and studied here. This university is also known as the Roman Catholic Research University in the Philippines and has existence since 1907.

Further, the country of the Philippines has a widespread reputation in terms of Sisters of Saint Paul, Chartres. This committee manages more than 40 schools, and St. Paul University, the Philippines, is one of them. Moreover, the university is a non-profitable and co-educational establishment for primary and higher studies.

List of best things that grabs the attention of students around the world

World-class learning experience

Students will get the first-class experience of learning the MBBS abroad. And it is also assumed by the MBBS Abroad Consultants.

Focus

The university’s center of attention is on the mental and physical comfort and safety of the students. It is possible due to the availability of countless extra-curricular activities with academics.

Events

The institution confines the that indicates the combination of paintings and sports. It reduces the heavy stress of students and helps them to continue their other hobbies. Apart from that, other co-activities, cultural programs, academic support programs exist here for the candidates to enjoy.

Hostels & Accommodations

First of all, thanks to the university for giving this facility. Rooms are allotted with double and triple sharing options with AC & Non-AC rooms according to their choices. Also, they provide a kitchen facility to those who want to cook their food. And the facility of laundry and Wi-Fi is provided in addition.

Conclusion

MBBS Abroad Consultants suggests this university because of all the above facilities. Moreover, we suggest that students should check all the facilities, environment, study materials, and syllabus while leaving their hometown to avoid troublesome situations.


uncancer said...

Constipation and Cancer: How are they connected ?

All you need to know about constipation and cancer

Inflammatory Bowel Disease (IBD) is a general term for a digestive tract disorder, which is chronic inflammation. There are two main types of IBD, namely Ulcerative Colitis and Crohn's disease. Both types of IBD are recognized by their symptoms of diarrhea, rectal bleeding, abdominal pain, fatigue, and weight loss. It can also cause weight gain and cancer

Methods to cure IBD

IBD is a disease that will take a long time to cure and requires continuous and regular care and follow-ups of Ayurvedic medicine, Yoga, Meditation, and lifestyle change.

Itools Mobile Service said...

Glad to see your post.Thanks for sharing
Iphone service center in chennai

mbbs abroad 2021 said...

Is studying MBBS in Ukraine a good way for Indian students? The answer is yes! Ukraine is one of the best and most popular MBBS places abroad among Indian students. More than 18,000 Indian students are currently studying MBBS in Ukraine. It is also one of the top 5 places to study MBBS abroad. Some medical universities in Ukraine are among the top 1,000 in the world. Based on the FMGE results (now next), Ukraine has a better result than other popular MBBS locations abroad. FMGE pass percentage is high in many medical universities in Ukraine.

You do not need to have IELTS or TOEFL qualification to be admitted to Ukrainian medical colleges.

This is a very healthy and loving environment

Medical colleges charge the lowest MBBS tuition fees in Ukraine. MBBS Ukraine is cheaper and cheaper than any other country like USA, UK.

English is the language used for communication

Immediate approval for a student visa

Very efficient and low cost lifestyle including monthly expenses

Zero crime rate, which makes students' living space safer

Most Medical colleges in Ukraine are accredited by the WHO / NMC.

The admission process for MBBS from Ukraine is very efficient

Medical schools in Ukraine offer excellent accommodation for MBBS students

Doctify India said...

A cardiologist jobs requires a deep interest in science and technology, as well as excellent communication skills. An effective cardiologist must be able to work in a fast-paced environment and stay calm under pressure. A seasoned cardiologist must be detail-oriented and have a keen eye for details. A strong desire to help people in need is an essential trait for a renowned cardiologist.

RMC Education said...

I've picked quite a few new skills thanks to this blog. Your contribution to our community is quite insightful, and we are grateful for it." Look through it if you are interested in obtaining an M.B.B.S. or studying in another country. Surgut State University stands as a beacon of academic excellence, fostering a dynamic learning environment. With a commitment to innovation and research, the university empowers students with a diverse range of programs. Its rich cultural atmosphere and dedication to academic progress make Surgut State University a distinguished institution of higher learning.

RMC Education said...

I've picked quite a few new skills thanks to this blog. Your contribution to our community is quite insightful, and we are grateful for it." Look through it if you are interested in obtaining an M.B.B.S. or studying in another country.
Osh State University, situated in Osh, Kyrgyzstan, is a well-regarded institution offering diverse academic programs. Notably, the Medical Faculty stands out, attracting international students for its MBBS program. With a commitment to quality education, modern facilities, and a multicultural environment, Osh State University is a popular choice for those pursuing higher education in Central Asia.