/algorithms

MPI Interest Group on Algorithms on 1st semester 2021

Primary LanguagePython

Introduction

Lecturer: Steve Yan

Location: Macao Polytechnic Institute

Time Schedule: From 26 Oct. Each Tuesday, 18:00 - 19:30

Semester: 1

Useful URLs

Typora: typora.io

Google Colab: google/colab

LeetCode: leetcode/problemset

POJ: poj/problemlist

How to use this repository?

Clone via HTTPS using following command or Click Code then Download ZIP.

git clone https://github.com/Ex10si0n/Algorithms.git

You can open README.md (Markdown File: open via Typora or notepad.exe) locally or on this page.

Assessments

  • Attandance
  • Assignments

Outline

This lecture will specifically focus on the Algorithms implementation. My example code will be demostrated in Python, but you can adopt any kind of programming language if you prefer.

No slides are distributed (cuz. I do not regard slides as effecient format to display codes) but all of the codes and explanations are showed on this README.md.

Following topics will be covered in the Interest Group

Before We Start (for MPI Algorithms lecture)

Here are some useful tools for coding. I will briefly introduce them as follows:

vim (neovim)

Vim is a high efficient code editor in command line. I will use vim to implement the Algorithms code in this lecture. You can try to use it with ease because I will specifically introduce some shortcuts and modes of vim. But you are free to adopt any IDEs or text editor you like. You can install it by command:

Installation

# Linux
sudo <package-manager> install neovim

# macOS
brew install neovim

# Windows
choco install vim

Package manager installation on macOS and Windows

# macOS (in Terminal.app)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# Windows (in powershell.exe with Administrator)
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))

Or install vim in IDEs (better experience)

Demo at Jetbrains/using-product-as-the-vim-editor

LeetCode

LeetCode in 知乎. It is a good platform for elementary algorithms learning. It is appropriate for preparing for a job as well as learning algorithms.

I you do not have a LeetCode account, please visit Leetcode.com or Leetcode-cn.com (中文题目) to create an account.