COURSE DETAIL
COURSE DETAIL
This course is an introduction to algorithms. Lectures are about the fundamental skills of algorithm design and analysis. The course will teach the students how to analysis the asymptotic performance of algorithms with the growth of functions, as well as the probabilistic analysis and amortized analysis. Basic algorithm design skills such as divide-and-conquer, dynamic program functions and greedy algorithm are also included. Some specific topics, such as sorting algorithms, string matching algorithms, NP completeness theory and approximation algorithms will also be discussed.
COURSE DETAIL
This course is an introduction to problem-solving, algorithm development, and programming in the Python language. It includes fundamental programming constructs and abstractions, sorting and searching techniques, and machine representations of data. The practical component covers input/output, conditionals, loops, strings, functions, arrays, lists, dictionaries, recursion, text files, and exceptions in Python. Students are taught testing and debugging, as well as sorting and searching algorithms, algorithm complexity, and equivalence classes. Number systems, binary arithmetic, Boolean algebra, and logic gates are also introduced. The course is offered in a blended learning format.
COURSE DETAIL
The major objective of this course is to teach you how to solve problems using algorithmic thinking with the concept of the "object-oriented" programming. We express our algorithms in English, then translate them into the programming language. We cover Python, C++ in this class. During the course, you learn how to use loops, conditionals, functions, arrays, and most importantly "classes." These are the building blocks of programs, which we use to create increasingly complex programs. This course is to understand the fundamentals of object-oriented programming; to understand how to use basic data structures and classes to create complex programs; and to develop problems solving skills by learning algorithmic thinking.
Prerequisite: CSI2100- Computer Programming
COURSE DETAIL
This course is designed to introduce the fundamental concepts and implementations of modern database management systems. This is not a course that teaches you how to use a database to build applications (e.g., schema design, SQL programming). It is designed as a systems course with an emphasis on database internals. Prior experience with databases is NOT expected. Upon successful completion of this course, the student should feel confident taking a job as a database developer or conducting database-related research in graduate school.
COURSE DETAIL
With the development of Internet, multimedia data have become increasingly accessible, such as images, audios, videos, texts, etc.; the advances of artificial neural networks (e.g. large multi-modal model GPT4) have also made multimodal fusion a general trend in Al. This course covers applications including image/video processing generation, audio/ speech processing and generation, natural language processing and generation. It introduces popular signal processing and machine learning techniques in the artificial intelligence field, such as data representation, data compression, sequence models, data synthesis, multimodal fusion, etc. Through lectures and course projects, students learn about the features of different signals, and their common ground.
COURSE DETAIL
This course is a course to study the theory and practice of computer graphics. In theory, we study graphics algorithms and mathematical fundamentals, and also learn programming to apply them in practice. Key topics include math for graphics, Transformation, Viewing, Texture mapping, Lighting, Using models, Advanced buffer techniques, Advanced rendering and animation techniques, etc. The programming language used is C++, and the class is conducted using the OpenGL API.
Prerequisites: C/C++ language programming, object-oriented programming, data structures, and differential calculus.
COURSE DETAIL
This course provides a general introduction to computer vision. Major topics include image processing, detection and recognition, geometry, video analysis, and deep learning. Students learn basic concepts of computer vision as well as hands on experience to solve real-life vision problems. Students learn basic algorithms of computer vision, learn deep learning based computer vision algorithms, and apply learned methods for practical applications.
Prerequisites: Calculus, Linear algebra, Probability
COURSE DETAIL
This introductory course in computer graphics comprises of three parts. The first part of the course presents a bird's-eye view of the current state-of-the-art in the field. The latter two parts cover rendering, which is one of the core topics in computer graphics, in detail. The second part of the course teaches central concepts in rendering, along with the relevant mathematics. Finally, the third part of the course focusses on applications of the theory taught in the second part.
COURSE DETAIL
The course provides a thorough introduction to graph and network analysis from a computer science perspective. It covers the basic concepts and key algorithms in network analysis, and discusses their use in the context of many real-world applications across a variety of domains. Students learn to apply network analysis methods in practice through the medium of the Python programming language. Students taking this course must have previously completed the module COMP30760 "Data Science in Python". or an equivalent class at their home university.
Pagination
- Previous page
- Page 32
- Next page