With two courses and a project under your belt, you probably realize  the importance of "Efficiency" in programming, but so far you weren't  expected to come up with efficient solutions to problems.
In the early stages of this course, you will learn how to quantify and compare algorithms (or procedures, or functions) in terms of "running time" and "space". The major portion of this course, however, deals with the design and efficient implementation of structures (linked-list, stack, queue, trees, heap, priority queue, hash table etc.) to store, access, modify, insert, delete and process data, and algorithms that make use of these data structures to provide efficient solutions to common problems. Sorting, in particular, will be done in excruciating detail, and you will learn about the implementation and variations of many sorting algorithms. Towards the end, you will learn the implementation of graphs and and a few graph algorithms. The contents of this course will be used in most other courses, which is why this is an important course.
  In the early stages of this course, you will learn how to quantify and compare algorithms (or procedures, or functions) in terms of "running time" and "space". The major portion of this course, however, deals with the design and efficient implementation of structures (linked-list, stack, queue, trees, heap, priority queue, hash table etc.) to store, access, modify, insert, delete and process data, and algorithms that make use of these data structures to provide efficient solutions to common problems. Sorting, in particular, will be done in excruciating detail, and you will learn about the implementation and variations of many sorting algorithms. Towards the end, you will learn the implementation of graphs and and a few graph algorithms. The contents of this course will be used in most other courses, which is why this is an important course.
   As such, there isn't anything "really complicated" in this  course, and if you attend classes and read the textbook regularly, you  should be able to follow along pretty easily. Labs and exercises in this  course will mostly involve implementation of data structures and  related algorithms, with desired properties, and sometimes applications  of these to specific problems. CS 213 is definitely the easier of the  two core courses in the semester, in terms of both concepts and  exercises, and it should not be difficult to do well if you put in a  decent amount of effort.
(Post Credits - Aakash Rao NS)
    (Post Credits - Aakash Rao NS)
 
No comments:
Post a Comment