| |
|
|
 |
 |
Home
> Courses > Undergraduate |
Design and Analysis of Computer Algorithms |
  |
|
|
| Description |
This course is one of the most important courses in the computer engineering
area due to its significance of the basic concepts, the philosophy behind the theory, and actual
application to the real world. We discuss design and analysis of advanced data structures and the way
of programming in terms of the program efficiency. The purpose of this course is to introduce key
algorithms which are essential for solving computer-oriented problems, and techniques for easier
creation of other efficient algorithms. We cover advanced techniques behind data structures for
analyzing upper and lower bounds for many essential algorithms in this area. Problems discussed
during the semester include sorting, searching, advanced data structures, dynamic programming,
divide-and-conquer method, greedy methods, graph algorithms, and maximum flow problem. |
|
| Textbook |
T.H.Cormen, C.E. Leiserson and R.L. Rivest, "Introduction to Algorithms,"
3rd Edition, MIT Press, 2010. |
|
|
|
| Description |
Design and analysis of data structures(DS)
in terms of efficiency of programs. The purpose of this course
is to introduce data structures necessary for solving computer-oriented
problems, principles, and techniques for specifying algorithms.
Classical DS design techniques are mostly discussed. Elementary
DS for sorting, searching, and other operations on them include
arrays, stacks, (circular) queues, linked lists, hash tables,
trees, graphs, and strings. |
|
| Textbook |
Horowitz, Sahni, and Anderson-Freed, Fundamentals of Data
Structures in C, 2nd Edition, Silicon Press, 2008. |
|
|
|
| Description |
This course conforms with the IEEE/ACM recommendation for
the undergraduate operating system class. The lectures and homework
assignments will be a mixture of theory and practice, providing
you with a sound background in operating systems for future
study and to help you prepare for a professional programming
position in industry. You will learn how to make effective use
of operating system features and functions, and how an operating
system is designed. |
|
| Textbook |
Gary Nutt, "Operating Systems," Third Edition, Addison
Wesley, 2004. |
|
|
|
| Description |
This course is intended for students
who wish to develop their C programming skills based on MS Windows
and Unix/Linux. It can be taken by students with little or no
prior experience of programming; however, most students will
have some previous computing experience. |
|
| Textbook |
C by Dissection, Edition 4
by Al Kelley and Ira Pohl, Addison-Wesley |
|
|
|
| Description |
This course is an introductory course to Java Programming.
It teaches students with little programming experience how to
program in an object oriented manner with Java programming language.
Topics include introductory object oriented programming, algorithmic
thinking, problem solving, develop Java Application, Java Applet
and Java Swings, control structures, methods, arrays, object-based
programming, object oriented programming, and strings objects.
Basic HTML World Wide Web programming will also be discussed. |
|
| Textbook |
ÀÚ¹Ù 2 JDK 1.4 (Ŭ¸¯Çϼ¼¿ä) (ISBN 89-7280-657-9) ÀúÀÚ Á¤ÀÇÇö, ±è¼ºÁø °øÀú(´ë¸² ÃâÆÇ»ç) |
|
|
|
| Description |
This class is intended to provide
you clear entry-level explanations of basic topics such as predicate
logic, program verification, and recursion to effectively study
higher level computer science courses. Selected topics include
Formal logic, Proofs, Recursion, Analysis of algorithms, Sets
and Combinatorics, Relations, Functions, Matrices, Graphs, Trees,
Graph algorithms, Boolean algebra, Computer logic, Algebraic
structures, Finite-State Machines, and Formal languages. |
|
| Textbook |
ith L. Gersting, "Mathematical Structures for Computer
Science", 3rd edition, Computer Science Press, 1993. Fourth
edition published in 1999 by the same author will be also recommended. |
|
|
|
| Description |
UNIX Operating System is the one
of the most important and useful OSs in this area. This class
is designed to give you firm basis of UNIX system especially
shell section. Topics covered in this class are UNIX system
basics, Command shells, UNIX file system, Managing your files,
Utilities, Text file utilities, vi editor, Bourne shell programming
languag, AWK programming language, window system, networking,
and LAN networking utilities. |
|
| Textbook |
K. Christian and S. Ritcher, "The UNIX Operating System",
John Wiley and Sons, 1994. |
|
Advanced Engineering Mathematics II |
  |
|
|
| Description |
Fourier series to represent periodic,
non-sinusoidal waves as trigonometric series. Some of the properties
and applications of Fourier series for a periodic non-sinusoidal
input signal in electrical circuit, signal processing, and semiconductor
devices. Fourier integrals and transforms for the analysis of
non-periodic and non-sinusoidal signals. Define a complex number
and expand to complex functions and their regions in the complex
plains. Cauchy-Riemann equation. Concept of mapping and Cauchy's
integral theorem. The valuable characteristics of Taylor, power,
and Laurent series. More applications of the residual integration
method in evaluation of real integrals. |
|
| Prerequisites |
Advanced Engineering Mathematics I. |
|
| Textbook |
E. Kreyszig, "Advanced Engineering Mathematics",
John Wiley and Sons, Inc., 1993. |
|
Theoretical Computer Science |
  |
|
|
| Description |
This class is intended to give
you the theoretical foundation necessary to effectively research
topics in computer science. Selected topics include automata
theory and formal languages, predicate logic, computability,
and complexity theory. The prerequisites for this class include
linear algebra, and probability/statistics, or consent of the
Graduate Advisor. |
|
| Textbook |
Lewis and Papadimitriou, "Elements of the Theory of Computation",
Prentice Hall, 1981. |
|
|
|
|