This course covers methodologies and applications of scientific computation using computer systems. We cover topics of numerical computation such as numerical analysis, linear algebra, and probability simulation as well as topics of efficient data manipulations such as data structure, sorting, and searching. This course includes the practice of C programming.