Here’s a well-structured README.md
template tailored to a Computer Science undergraduate course repository. You can adapt the sections according to your specific course, goals, or structure.
Welcome to the BSc Computer Science GitHub repository! This repository is intended to support learning, collaboration, and code sharing for students enrolled in the course.
- About the Course
- Repository Structure
- How to Use This Repository
- Getting Started
- Prerequisites
- Contributing Guidelines
- License
- Acknowledgements
This repository contains materials, assignments, and code examples for BSc Computer Science at University Of The Witwarersrand. The primary focus of this course is to develop foundational knowledge and skills in [key topics], such as:
- Programming Languages: [e.g., Python, C++, Java, etc]
- Data Structures & Algorithms
- Artificial Intelligence and Machine Learning
- Operating Systems and Networks
- Databases and Software Engineering Principles
- System Design
- Mobile Computing
📦 computer_science_repo
├── 📁 lectures/ # Lecture slides, notes, and supplementary materials
├── 📁 assignments/ # Programming assignments and problem sets
├── 📁 projects/ # Group and individual project submissions
├── 📁 solutions/ # Solutions to exercises (if applicable)
├── 📁 resources/ # External resources (articles, books, videos)
└── README.md # This README file
-
Clone the repository:
git clone https://github.com/Carrington-dev/computer_science_repo.git cd computer_science_repo
-
Explore by folder: Browse relevant folders for assignments, projects, or lecture materials.
-
Fork and contribute: If you want to add or improve content, feel free to fork the repo and submit a pull request!
To complete the coding assignments, you will need:
- A working installation of [Required Programming Language] (e.g., Python 3.x)
- Git installed on your machine for version control
- Optionally: A virtual environment to manage dependencies
Example: Set up a virtual environment (Python):
python -m venv venv
source venv/bin/activate # On Mac/Linux
venv\Scripts\activate # On Windows
Before working through this course, it’s recommended to have:
- Basic programming knowledge (e.g., Python or Java)
- Familiarity with Git/GitHub
- [Any other specific prerequisites]
Contributions to this repository are welcome! Please follow these guidelines:
- Fork the repository and create a branch for your changes.
- Commit your changes with descriptive messages.
- Create a pull request explaining your changes.
- Wait for feedback and approval from the maintainers.
This repository is licensed under the [License Name]. See the LICENSE file for more information.
Special thanks to:
- [Professor Name] for course materials and guidance
- University of [Wits/Cape Town/etc.] for providing a great learning environment
- Contributors who have helped improve this repository
Feel free to suggest improvements to this README.md
by opening an issue or submitting a pull request! 🎉
This template should help make your course repository more organized and professional. Let me know if you'd like any changes or additional sections!
https://github.com/G33kzD3n/Catalogue/blob/master/Domain-Driven%20Design_%20Tackling%20-%20Eric%20Evans_14.pdf
https://www.uuidgenerator.net/dev-corner/kotlin
We covered a number of topics here. This repo also includes practice answers from hackerrank
- Binary Search Trees
- Insertion
- Pr-eorder traversal
- In-order traversal
- Post-order traversal
- Outline Traversal
- recursion
- using level counter method
- Left Nodes Traversal Only (printout)
- recursion
- using level counter method
- Right Nodes Traversal Only (printout)
- Change order traversal
- Level order traversal
- using a queue
- using level counter method
- recursion
- Todo
- Tree Length
- Leaf Node Print Out
25 20 36 10 22 30 40 5 12 28 38 48 -1
25 20 36 10 22 30 40 5 12 28 38 48 21 24 23 29 37 47 46 -1
25 20 36 10 22 23 30 40 5 12 28 38 48 21 24 29 37 47 46 -1
-
Linked List (Singly)
- Insertion
- Merge
- reversing
- Insert at index (to checkout)
- Add a tail
-
Queue
- insert
- pop
- top
- use cases
- size
-
Stack
- insert
- pop
- top
- use cases
- size
-
Vector
- insert
- pop
- top
- index at
- size
- reallocate
- allocate
- top
- last
-
HashMap
-
Heap
-
Graphs
https://github.com/Carrington-dev/IDSA
https://www.geeksforgeeks.org/binary-search-tree-data-structure/
https://python-book.softuni.org/chapter-11-tricks-and-hacks.html