Reem Mahmoud
Visiting Assistant Professor of Computer Science
Affiliation: Visiting
Education: BS in Mathematics, American University of Sharjah; MS in Mathematics, Virginia Commonwealth University; PhD in Computer Science, Virginia Commonwealth University
Research Areas: Graph theory, graph coloring, discrete math, algorithms

Reem Mahmoud is a Visiting Assistant Professor of Computer Science at NYU Abu Dhabi. She earned her PhD in Computer Science from Virginia Commonwealth University, where she also earned her MSc in Mathematics. She also holds a BSc in Mathematics from the American University of Sharjah. Her research interests are in structural graph theory, discrete math, and graph coloring. Her recent work focuses on graph coloring reconfiguration problems.
Courses Taught
-
Discrete mathematics concerns the study of mathematical structures that are discrete rather than continuous, and provides a powerful language for investigating many areas of computer science. Discrete structures are characterized by distinct elements, which are often represented by integers. Continuous mathematics on the other hand deals with real numbers. Topics in this course include: sets, counting techniques, logic, proof techniques, solving recurrence relations, number theory, probability, statistics, graph theory, and discrete geometry. These mathematical tools are illustrated with applications in computer science.
Prerequisite for CS-UH 1002 Discrete Mathematics. Must be an undeclared Abu Dhabi student.
Previously taught: Fall 2016, Spring 2017, Fall 2017, Spring 2018, Summer 2018, Fall 2018, Spring 2019, Fall 2019, Spring 2020, Fall 2020, Spring 2021, Fall 2021, Spring 2022, Summer 2022, Fall 2022, Spring 2023, Summer 2023, Fall 2023, Spring 2024, Fall 2024
-
Spring 2025;
14 Weeks
Dimitrios Thilikos Touloupas - TR 12:45 - 14:00 Taught in Abu Dhabi -
Spring 2025;
14 Weeks
Reem Mahmoud - MW 09:55 - 11:10 Taught in Abu Dhabi -
Spring 2025;
14 Weeks
Moumena Chaqfeh - MW 14:10 - 15:25 Taught in Abu Dhabi -
Spring 2025;
14 Weeks
R 17:00 - 18:15 Taught in Abu Dhabi -
Spring 2025;
14 Weeks
W 12:45 - 14:00 Taught in Abu Dhabi -
Spring 2025;
14 Weeks
R 14:10 - 15:25 Taught in Abu Dhabi -
Fall 2025;
14 Weeks
Reem Mahmoud - MW 14:10 - 15:25 Taught in Abu Dhabi -
Fall 2025;
14 Weeks
Moumena Chaqfeh - TR 09:55 - 11:10 Taught in Abu Dhabi -
Fall 2025;
14 Weeks
Moumena Chaqfeh - TR 11:20 - 12:35 Taught in Abu Dhabi -
Fall 2025;
14 Weeks
R 14:10 - 15:25 Taught in Abu Dhabi -
Fall 2025;
14 Weeks
R 15:35 - 16:50 Taught in Abu Dhabi -
Fall 2025;
14 Weeks
R 17:00 - 18:15 Taught in Abu Dhabi
This course appears in...
- Majors > Computer Engineering
- Majors > Computer Science
- Majors > General Engineering
- Minors > Computer Science
- Minors > Sound and Music Computing > Computer Science and Engineering Electives
-
Spring 2025;
14 Weeks
-
Organizing and managing large quantities of data using computer programs is increasingly essential to all scientific and engineering disciplines. This course teaches students the principles of data organization in a computer, and how to work efficiently with large quantities of data. Students learn how to design data structures for representing information in computer memory, emphasizing abstract data types and their implementation, and designing algorithms using these representations. Topics include recursion, asymptotic analysis of algorithms, lists, stacks, queues, trees, hashing, priority queues, dictionaries, graph data structures etc. This course is taught using the C++ programming language. In addition to the 2 theory lectures, one lab session (2:30h) will be held weekly. It will be dedicated to the practice of C++ and implementation of data structure concepts covered in the theory lectures. This will effectively help students in the design and implementation of computerized solutions to real problems using appropriate data structures.
Prerequisite for CS-UH 1050: (CS-UH 1001 or CSCI-UA 101 or CSCI-SHU 101 or CS-UY 1122 or ENGR-UH 1000 with a minimum A- Grade) and (CS-UH 1002 or MATH-UA 120 or CSCI-SHU 2314 or MA-UY 2314); CS-UH 1002 may be taken as a corequisite
Previously taught: Fall 2016, Spring 2017, Fall 2017, Spring 2018, Fall 2018, Spring 2019, Fall 2019, Spring 2020, Fall 2020, Spring 2021, Fall 2021, Spring 2022, Fall 2022, Spring 2023, Fall 2023, Spring 2024, Summer 2024, Fall 2024
-
Spring 2025;
14 Weeks
Djellel Difallah - TR 15:35 - 16:50 Taught in Abu Dhabi -
Spring 2025;
14 Weeks
Talal Rahwan - MW 11:20 - 12:35 Taught in Abu Dhabi -
Spring 2025;
14 Weeks
F 15:45 - 17:00 Taught in Abu Dhabi -
Spring 2025;
14 Weeks
R 09:55 - 11:10 Taught in Abu Dhabi -
Spring 2025;
14 Weeks
R 12:45 - 14:00 Taught in Abu Dhabi -
Spring 2025;
14 Weeks
Reem Mahmoud - MW 11:20 - 12:35 Taught in Abu Dhabi -
Summer 2025;
4 Weeks
Eliseo Ferrante - MTWR 14:00 - 17:00; TF 09:00 - 12:00 Taught in Abu Dhabi -
Fall 2025;
14 Weeks
João Paulo Fernandes - TR 11:20 - 12:35 Taught in Abu Dhabi -
Fall 2025;
14 Weeks
Mai Oudah - F 09:25 - 10:40 Taught in Abu Dhabi -
Fall 2025;
14 Weeks
Mai Oudah - TR 09:55 - 11:10 Taught in Abu Dhabi -
Fall 2025;
14 Weeks
Mai Oudah - TR 11:20 - 12:35 Taught in Abu Dhabi -
Fall 2025;
14 Weeks
Mai Oudah - F 14:20 - 15:35 Taught in Abu Dhabi -
Fall 2025;
14 Weeks
F 10:50 - 12:05 Taught in Abu Dhabi
This course appears in...
- Majors > Computer Science
- Majors > Electrical Engineering
- Minors > Computer Science
- Minors > Sound and Music Computing > Computer Science and Engineering Electives
-
Spring 2025;
14 Weeks
-
Algorithms lie at the very heart of computer science. An algorithm is an effective procedure, expressed as a finite list of precisely defined instructions, for solving problems that arise in applications in any domain of knowledge. All computer programs are translations of algorithms into some programming language. Often the most difficult parts of designing an algorithm are to make sure that when it is programmed in a computer, it runs as fast as possible and does what it was designed to do. This course covers the fundamentals of algorithms, focusing on designing efficient algorithms, proving their correctness, and analyzing their computational complexity. The algorithms studied are taken from a variety of applications such as sorting, robotics, artificial intelligence, searching, pattern recognition, machine learning, music, bioinformatics, arithmetic, algebra, and geometry.
Prerequisite: (CS-UH 1002 or CSCI-SHU 2314 or MA-UY 2314/MA-UY 2314G or (MA-UY 2312 AND MA-UY 2322)) and (CS-UH 1050 prerequisite or CS-UH 1050 corequisite or
ENGR-UH 3510 or CS-UY 1134/CS-UY 1134G or CSCI-SHU 210 or CSCI-UA 9102 or CSCI-UA 102)Previously taught: Fall 2016, Spring 2017, Fall 2017, Spring 2018, Fall 2018, Spring 2019, Fall 2019, Spring 2020, Fall 2020, Spring 2021, Fall 2021, Spring 2022, Fall 2022, Spring 2023, Summer 2023, Fall 2023, Spring 2024, Fall 2024
-
Spring 2025;
14 Weeks
Saurabh Ray - TR 11:20 - 12:35 Taught in Abu Dhabi -
Spring 2025;
14 Weeks
Dimitrios Thilikos Touloupas - TR 14:10 - 15:25 Taught in Abu Dhabi -
Spring 2025;
14 Weeks
R 17:00 - 18:15 Taught in Abu Dhabi -
Spring 2025;
14 Weeks
Saurabh Ray - R 14:10 - 15:25 Taught in Abu Dhabi -
Fall 2025;
14 Weeks
T 14:10 - 15:25 Taught in Abu Dhabi -
Fall 2025;
14 Weeks
W 15:35 - 16:50 Taught in Abu Dhabi -
Fall 2025;
14 Weeks
T 15:35 - 16:50 Taught in Abu Dhabi -
Fall 2025;
14 Weeks
Dimitrios Thilikos Touloupas - MW 11:20 - 12:35 Taught in Abu Dhabi -
Fall 2025;
14 Weeks
Dimitrios Thilikos Touloupas - TR 12:45 - 14:00 Taught in Abu Dhabi -
Fall 2025;
14 Weeks
Reem Mahmoud - MW 15:35 - 16:50 Taught in Abu Dhabi
This course appears in...
- Majors > Computer Science
- Majors > Electrical Engineering
- Minors > Computer Science
- Minors > Sound and Music Computing > Computer Science and Engineering Electives
-
Spring 2025;
14 Weeks