데이터 구조 및 알고리즘 특화 과정
Master Algorithmic Programming Techniques. Learn algorithms through programming and advance your software engineering or data science career
이 전문 분야 정보
응용 학습 프로젝트
The specialization contains two real-world projects: Big Networks and Genome Assembly. You will analyze both road networks and social networks and will learn how to compute the shortest route between New York and San Francisco (1000 times faster than the standard shortest path algorithms!) Afterwards, you will learn how to assemble genomes from millions of short fragments of DNA and how assembly algorithms fuel recent developments in personalized medicine.
캘리포니아 샌디에고 대학교
UC San Diego is an academic powerhouse and economic engine, recognized as one of the top 10 public universities by U.S. News and World Report. Innovation is central to who we are and what we do. Here, students learn that knowledge isn't just acquired in the classroom—life is their laboratory.
국립 연구 고등 경제 대학
National Research University - Higher School of Economics (HSE) is one of the top research universities in Russia. Established in 1992 to promote new research and teaching in economics and related disciplines, it now offers programs at all levels of university education across an extraordinary range of fields of study including business, sociology, cultural studies, philosophy, political science, international relations, law, Asian studies, media and communicamathematics, engineering, and more.
자주 묻는 질문
전문 분야를 완료하면 대학 학점을 받을 수 있나요?
If you subscribed, you get a 7-day free trial during which you can cancel at no penalty. After that, we don’t give refunds, but you can cancel your subscription at any time. See our full refund policy.
Can I just enroll in a single course?
하나의 강좌에만 등록할 수 있나요?
네! 시작하려면 관심 있는 강좌 카드를 클릭하여 등록합니다. 강좌를 등록하고 완료하면 공유할 수 있는 인증서를 얻거나 강좌를 청강하여 강좌 자료를 무료로 볼 수 있습니다. 전문 분야 과정에 있는 강좌에 등록하면, 전체 전문 분야에 등록하게 됩니다. 학습자 대시보드에서 진행 사항을 추적할 수 있습니다.
Can I take the course for free?
해당 강좌를 무료로 수강할 수 있나요?
이 강좌는 100% 온라인으로 진행되나요? 직접 참석해야 하는 수업이 있나요?
이 강좌는 100% 온라인으로 진행되므로 강의실에 직접 참석할 필요가 없습니다. 웹 또는 모바일 장치를 통해 언제 어디서든 강의, 읽기 자료, 과제에 접근할 수 있습니다.
What background knowledge is necessary?
We expect you to be able to implement programs that: 1) read data from the standard input (in most cases, the input is a sequence of integers); 2) compute the result (in most cases, a few loops are enough for this); 3) print the result to the standard output. For each programming challenge in this course, we provide starter solutions in C++, Java, and Python. The best way to check whether your programming skills are enough to go through problems in this specialization is to solve two problems from the first week. If you are able to pass them (after reading our tutorials), then you will definitely be able to pass the course.
2. Basic knowledge of discrete mathematics: proof by induction, proof by contradiction.
Knowledge of discrete mathematics is necessary for analyzing algorithms (proving correctness, estimating running time) and for algorithmic thinking in general. If you want to refresh your discrete mathematics skills, we encourage you to go through our partner specialization — Introduction to Discrete Mathematics for Computer Science (https://www.coursera.org/specializations/discrete-mathematics). It teaches the basics of discrete mathematics in try-this-before-we-explain-everything approach: you will be solving many interactive puzzles that were carefully designed to allow you to invent many of the important ideas and concepts yoursel
What is the difference between this course and other courses covering algorithms?
We believe that learning the theory behind algorithms (like in most Algorithms 101 courses taught at 1000s universities) is important but not sufficient for a professional computer scientist today. This specialization combines the theory of algorithms with many programming challenges. In contrast with many Algorithms 101 courses, you will implement over 100 algorithmic problems in the programming language of your choice. And you will see yourself that the best way to understand an algorithm is to implement it!
How long does it take to complete the Specialization?
Time to completion can vary based on your schedule, but most learners are able to complete the Specialization in 6-8 months.
전문 분야를 완료하는 데 얼마나 걸리나요?
Each course in the Specialization is offered on a regular schedule, with sessions starting about once per month. If you don't complete a course on the first try, you can easily transfer to the next session, and your completed work and grades will carry over.
얼마나 자주 전문 분야의 강좌가 제공되나요?
Basic knowledge of at least one programming language (C/C++, Java, Python): loops, arrays, stacks, recursion. Basic knowledge of mathematics: proof by induction, proof by contradiction.
Do I need to take the courses in a specific order?
We recommend taking the courses in the order presented, as each subsequent course will build on material from previous courses.
Will I earn university credit for completing the Specialization?
Coursera courses and certificates don't carry university credit, though some universities may choose to accept Specialization Certificates for credit. Check with your institution to learn more.
전문 분야를 완료하면 대학 학점을 받을 수 있나요?
The lectures in this specialization will be self-contained. Most lectures will be based on the bestselling textbook "Algorithms" co-authored by Sanjoy Dasgupta from University of California at San Diego as well as Christos Papadimitriou and Umesh Vazirani from University of California at Berkeley. In addition to UCSD and Berkeley, the textbook has been adopted in over 100 top universities and is available on Internet.
궁금한 점이 더 있으신가요? 학습자 도움말 센터를 방문해 보세요.