Official government website of the Government of Kingdom of Saudi Arabia
Link to official Saudi websites end with edu.sa

All links to official educational websites in the Kingdom of Saudi Arabia end with sch.sa or edu.sa

Government websites use the HTTPS protocol for encryption and security.

Secure websites in the Kingdom of Saudi Arabia use the HTTPS protocol for encryption.

Registered with the Digital Government Authority under number:

20250417892

Computational Structures (2)

SE3402
3 hours English

Computational Structures (2)

Computational Structures
1 Advanced Graph Theory / Connectivity and graph traversal algorithms: / Depth-First Search (DFS), Breadth-First Search (BFS) / Graph representations: / Adjacency matrices and adjacency lists / Applications: / Shortest path algorithms (Dijkstra, Floyd-Warshall) / Minimum spanning trees (Prim, Kruskal)
2 Trees and Tree Algorithms / Basics: / Properties of trees / Binary trees and traversals (in-order, pre-order, post-order) / Advanced Trees: / Binary Search Trees (BST) / Balanced trees (AVL trees, Red-Black trees) / Applications: / Data storage and retrieval / Syntax trees in compilers
3 Formal Languages and Automata / Formal Languages: / Alphabets, strings, and languages / Operations on languages (union, concatenation, closure) / Finite Automata: / Deterministic Finite Automata (DFA) / Non-Deterministic Finite Automata (NFA) / Equivalence of DFA and NFA / Applications: / Lexical analysis in compilers / String matching algorithms
4 Regular Expressions and Grammars / Regular expressions: / Syntax and operations / Conversion to finite automata / Context-free grammars (CFG): / Parse trees / Ambiguity in grammars / Applications: / Validation of inputs / Compiler design
5 Matrices and Linear Algebra in Computation / Basics: / Matrix operations (addition, multiplication, transposition) / Determinants and inverses / Applications: / Graph algorithms / Transformations in computer graphics
6 Computational Complexity / Big-O, Big-Theta, and Big-Omega notation / Growth of functions and asymptotic analysis / Applications: / Analyzing algorithm efficiency / Problem categorization (P vs. NP)
7 Advanced Topics in Modular Arithmetic / Applications in algorithms: / Modular exponentiation / Modular multiplicative inverse / Cryptographic applications: / Basic understanding of RSA and digital signatures
8 Combinatorics / Basic counting principles (addition and multiplication rules) / Permutations and combinations / Applications: / Algorithm design / Optimization problems
1.1 Mapped to: K1

- Understand advanced graph theory concepts, including traversal algorithms and shortest path algorithms.

Teaching Strategy Lecture, Tutorials
Assessment Methods Quizz, Homework , Exam
1.2 Mapped to: K2

- Explain the basics of automata theory, formal languages, and their applications in computational systems.

Teaching Strategy Lecture, Tutorials
Assessment Methods Quizz, Homework , Exam
1.3 Mapped to: K1

- Understand the principles of computational complexity and algorithm efficiency.

Teaching Strategy Lecture, Tutorials
Assessment Methods Quizz, Homework , Exam
1.4 Mapped to: K2

- Describe the structure and operations of trees, including binary search trees and balanced trees.

Teaching Strategy Lecture, Tutorials
Assessment Methods Quizz, Homework , Exam
2.1 Mapped to: S1

- Implement graph and tree algorithms to solve real-world computational problems.

Teaching Strategy Lecture, Tutorials
Assessment Methods Quizz, Homework , Exam
2.2 Mapped to: S2

- Design deterministic and non-deterministic finite automata for simple language recognition tasks.

Teaching Strategy Lecture, Tutorials
Assessment Methods Quizz, Homework , Exam
2.3 Mapped to: S2

- Use regular expressions to validate strings and perform pattern matching.

Teaching Strategy Lecture, Tutorials
Assessment Methods Quizz, Homework , Exam
3.1 Mapped to: V1

- Foster an appreciation for the theoretical underpinnings of modern software engineering techniques.

Teaching Strategy Lecture, Tutorials
Assessment Methods Quizz, Homework , Exam
3.2 Mapped to: V2

- Develop a habit of evaluating and optimizing computational solutions.

Teaching Strategy Lecture, Tutorials
Assessment Methods Quizz, Homework , Exam