42

GitHub - Just-A-Visitor/Coding: This repository contains pseudo-codes of various...

 4 years ago
source link: https://github.com/Just-A-Visitor/Coding
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

ReadMe.md

Gitter

Introduction

This repository contains the pseudo-code of various algorithms and data structures necessary for Interview Preparation and Competitive Coding

Contribution

Read this section carefully if you are planning on contributing to this repository.

The What

  • In the Pseudocode folder, you can find a lot of algorithms. If you've come across any interesting algorithms that changed the way you think about any topic, please consider contributing it to this repo.

  • There are a lot of pseudocodes with no explanation. If you want to write a detailed explanation on the workings and intuition of these algorithms, please raise an issue and start working on it after it is approved). I would prefer if the explanation is in pdf format. However, markdown format is equally acceptable.

  • If you are familiar with tikz, pgf or beamer, consider making some animations/graphs/diagrams/plots to explain the various algorithms.

  • If you want to contribute anything other than pseudocodes, feel free to explore the repository and pick up a code and explain its logic and working (either in pdf or Markdown format). If you don't see your desired code, feel free to add it. However, remember that this repository is not a code dump and you should only add new codes if you have written a good post explaining the intricacies of the algorithm.

The Why

  • You'll understand the algorithm in depth once you start working on its pseudocode because now you need to explain your code to people who code in a variety of languages.

  • Your work might help other people preparing for interviews/competitive programming get acquainted with the core concepts of the algorithms rather than being confused by the clutter of the programming language.

  • Lastly, you'll get to learn Latex which is a great experience in itself.

The How

  • If this is your first time contributing to a public repository, please refer to this link. For more clarity, you can refer to this link

  • If you are not familiar with TEX or TypeSetting in general, please refer to this link. You don't need to install anything to contribute to this repository. Just make sure that you have an Overleaf account and you are good to go.

  • Create an issue if you've decided to work on an algorithm and get it approved before the coding phase.

  • Make sure to follow the coding standards. Put all the headers related to the the specific package in a separate file called macros.tex. Put the source code in a file called SourceCode.tex. (Notice the Capitalisation).

  • If you want to code a different implementation than what is already present (for example, iterative instead of recursive, constant space instead of linear space, etc), please create a new sub-folder inside the root directory.

  • Don't include a lot of comments in the pseudocode (it just means that the code is not self-expressive). However, if the algorithm is highly non-trivial and you would like to include some explanation, please do so before or after the pseudocode. Refer to this link for example.

  • Please include a ReadMe.md file in each folder that you create. It can either contain the details about your algorithm or you can leave it empty (so that others can edit it eventually).

  • If you borrow the code from any online/offline source, please remember to cite it.

  • Finally, please include a pdf file of the final source code in the correspoding folder.

  • Make a pull request. Sit back and relax while your pull request gets merged.

Stuck?

  • If you need any clarifications or are stuck on something for a long time, feel free to ping us. Gitter

Sample

Images

Online Presence

Images Images Images


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK