Skip to content

Collection of programs in various languages that demonstrate different algorithms taught in “Design and Analysis of Algorithms” a key subject in the CS, CSIT, BIT, Software Engineering..

License

Notifications You must be signed in to change notification settings

Nawarajkarki/Design-and-Analysis-of-Algorighm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

73 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Design and Analysis of Algorithms

Welcome to the Design and Analysis of Algorithms repository!

This repository is a collection of programs in various languages that demonstrate different algorithms taught in the “Design and Analysis of Algorithms” course, a key subject in the CSIT curriculum.

Whether you’re a CSIT student delving into this subject or an algorithm enthusiast exploring new techniques, this repository offers a wide range of well-documented algorithms for you to learn from and experiment with. Enjoy your journey through the fascinating world of algorithms!

Algorithms

The algorithms covered in this repository are:

  1. Searching algorithms:
    • Linear search
    • Binary search
  2. Sorting algorithms:
    • Bubble sort
    • Insertion sort
    • Selection sort
  3. Divide & Conquer Algorithms:
    • Merge sort
    • Quick sort
    • Heap sort
    • Min-Max Finding
      • Divide & Conquer approach
      • Iterative method

These algorithms are implemented in multiple languages including Python, JavaScript, C, Go, etc.

Installation

To run the programs in this repository, you need to have the respective language runtime installed on your system.

For Python programs, you can download Python 3 from here.

For JavaScript programs, you need to have Node.js installed. You can download it from here.

Usage

To run a program, navigate to the folder that contains the program and execute it using the respective language runtime. For example:

For Python:

cd python/Sorting
python bubbleSort.py

For JavaScript:

cd javascript/Sorting
node bubbleSort.js

using Objective-C:

cd Searching
clang -framework Foundation -o linearSearch linearSearch.m
./linearSearch

Some programs may require input from the user or from a file. Please follow the instructions given in the comments or on the console.

Contributing

We encourage you to contribute to this repository!

If you decide to contribute, please create a new folder for the language you’re adding and maintain the existing file structure.

Before making a pull request, ensure your code is well-commented and your commit messages are clear and concise.

Project Roadmap

Our goal is to have implementations of all algorithms taught in the “Design and Analysis of Algorithms” course in multiple programming languages.

We’re starting with Python, but we aim to include other languages with your help.

We look forward to seeing this repository grow with your contributions.

License

This project is licensed under the MIT License.

Meaning You can do what ever the hell you want with this code.

About

Collection of programs in various languages that demonstrate different algorithms taught in “Design and Analysis of Algorithms” a key subject in the CS, CSIT, BIT, Software Engineering..

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •