Qingquan-Li / blog

My Blog
https://Qingquan-Li.github.io/blog/
132 stars 16 forks source link
blog github-issues github-pages react

Qingquan's Blog

License: CC BY 4.0


Contents at a Glance:

  1. C++
  2. Data Structure
  3. Algorithms
  4. Java
  5. Python
  6. Django
  7. Python Web Scraping
  8. HTML/CSS
  9. JavaScript
  10. Database
  11. Network
  12. Linux
  13. Git
  14. Kubernetes/Docker
  15. Others



C++

The process of translating a C++ source file to an executable file
C++ Naming Style
C++: Check data type
C++ Formatting Output: setprecision, fixed and showpoint Manipulator
C++: Working with Characters and string Objects: getline(), cin.get(), cin.ignore()
C++ Conditional Operator (Ternary Operator)
C++ Sentinels
C++ for-loop, while-loop and do-while-loop
What is the difference between i++ and ++i in C++?
C++ Using Files for Data Storage: Output and Input
C++ File Operations
C++ Passing File Stream Objects to Functions
C++ File Stream Error Testing
C++ File Stream: Member Functions (getline, get, put) for Reading and Writing Files
C++ Random Numbers
C++ constant reference: const&
C++ Using Reference Variables as Function Parameters
C++ Arrays and the memory size of the data type
C++: The Range-Based for Loop (iterate through an array)
C++: Arrays as Function Arguments
C++ Two-Dimensional Arrays
C++ Vector
C++ Pointers Basic
C++: The Relationship between Arrays and Pointers
C++: Pointers as Function Parameters
C++ Dynamic Memory Allocation
C++: Returning Pointers from Functions
C++: C-Strings
C++ Structured Data
C++: Two Examples of Structured Data
C++ Separating Class Specification from Implementation
C++ Class with Pointer and Reference Example: GameTeam
C++ Class Collaborations and UML Diagram
C++ Constructors
C++ Destructors
C++ Instance and Static Members
C++ Friends of Classes
C++ Copy Constructors
C++ "this" Pointer
C++ Overloading Functions
C++ Operator Overloading
C++ Class Aggregation
C++ Recursion


Data Structure

Linked Lists Basics
Linked List as an ADT, Unordered Linked List, Ordered Linked List
Linked List Demo Program
Doubly Linked List Demo Program
Implementation of Stacks as Arrays
Linked Implementation of Stacks
Introduction to Binary Trees
Binary Tree Traversal: In-order, Pre-order, and Post-order Traversal
Binary Search Trees
Introduction to Graphs
Depth-First Traversal and Breadth-First Traversal
Dijkstra's Shortest Path Algorithm
Spanning Tree
Topological Order


Algorithms

算法简介
Linear Search and Binary Search (C++)
Breadth-First Search (Python)
Greedy Algorithms (Travelling Salesperson Problem. Python)
Bubble Sort Algorithm (C++)
Insertion Sort Algorithm
Selection Sort Algorithm (C++)
Merge Sort Demo (C++)
Merge Sort with Python
Big-O, Little-o, Big-Omega, Little-Omega, and Theta notations


Java

Java 基础知识点
Java 面向对象的概念整理
Java 面向对象三大特性以及抽象类和接口
Java高级特性_1 集合框架及泛型
Java集合框架_hashCode() & equals()
Java高级特性_5 XML
JavaWeb_1 搭建Web环境、初识JSP
JavaWeb_2 JSP实现数据传递和保存
macOS Java 安装和环境配置
Oracle_11gR2安装教程
三层架构和 MVC 模式
常用 Java 代码块
VS Code 创建 Maven 项目


Python

安装Python(Linux/macOS/Windows)
Python编码风格
pip安装及使用
为Python项目建立虚拟环境
Python3数据类型
Python元组和列表
Python实参形参
Python Function arguments and mutability
单引号、双引号和三双引号的区别
Python 字符串格式化 (%操作符)
Python’s three string formatting syntaxes
Python字符串前加r
Python identity operators: "is" and "is not"
Python operators precedence rules
图像识别:简单的从一张图片中识别出中文(Tesseract)
Python 多线程与 GIL
Python 协程
使用Pygal库可视化Python获取的API数据
Python Requests(HTTP请求库)
使用ItChat库发微信信息
Python正则表达式
函数的回调和递归函数
Anaconda的安装及conda的使用
Linux 上安装 conda(miniconda)
Python发送邮件
Python读取PDF文档
Python词云wordcloud
使用UUID库生成唯一ID
Python 定时任务框架 APScheduler
一行Python命令搭建HTTP服务


Django

Django 常用命令
理解 Django 的 MTV 模式:创建一个简单页面
实现一个基于 Django 的动态加载数据的简单博客页面
局域网/外网访问 Django 项目
部署Django项目(Ubuntu + conda + uWSGI + Nginx)
Django 项目配置 MySQL
Django 连接已存在的数据库(以 MySQL 为例)自动生成 models,并伪造数据库迁移
简单使用 Gunicorn 托管 Django
移除 Django 中的一个 app
Django filter→QuerySet get→Object
Django设置伪外键(ForeignKey)
Django Cookies and Session
Django testing
Config PostgreSQL for Django on Ubuntu


Python Web Scraping

使用BeautifulSoup库爬取新闻标题
macOS安装Scrapy
Selenium+PhantomJS模拟登录
Selenium+Chrome模拟登录
Selenium Webdriver显式等待和隐式等待


HTML/CSS

HTML+CSS 知识结构梳理
HTML_1 HTML基础
HTML_2 列表、表格与框架
HTML_3 表单
CSS_1 CSS浮动(float,clear)通俗讲解
CSS_2 CSS实例-商品列表
:nth-child() 选择器:实现奇偶行隔行换色
Flex 布局、Grid网格布局


JavaScript

了解JavaScript
JavaScript基础语法
JavaScript函数
JavaScript的DOM和BOM
JavaScript对象
JavaScript表单验证
JavaScript表单验证之正则表达式
Javascript的this用法
JavaScript中的标点符号(逗号、分号)
macOS安装及卸载Node.js
npm 基础用法
JavaScript == vs ===
JavaScript 同步回调/异步回调
use Vue CLI to create a project
Ubuntu install Node.js
Add React to a Website
NVM (Node Version Manager) Commands
Config HTTPS for the local development environment (React.js) with mkcert


Database

MySQL_1 初识MySQL数据库
MySQL_2 创建MySQL数据库表_DDL(CREATE)
MySQL_3 MySQL数据库数据管理_DML(INSERT、UPDATE、DELETE)
MySQL_4 使用事务保证数据完整性_TCL(SET AUTOCOMMIT、START TRANSACTION、COMMIT、ROLLBACK)
MySQL_5 使用DQL命令查询数据_DQL(SELECT)
MySQL_6 创建和使用索引
MySQL_7 MySQL数据库备份与恢复
常用 SQL 语句( MySQL )
漫画数据库-摘录:表格的规范化(使用第三范式)
漫画数据库-摘录:SQL的基本操作
macOS安装/卸载MySQL 8.0.16
macOS安装/连接MySQL 5.7.28
macOS upgrade MySQL: mysql-8.0.25-macos11-x86_64 to mysql-8.0.26-macos11-arm64
Ubuntu 安装 MySQL 5.7 并设置被允许远程连接
MySQL的编码问题
使用 cron 定时备份 MySQL 数据库(使用 Ubuntu 系统)
Excel to MySQL 常用操作
Database Relational Model, Relational Algebra, Relational Calculus
Database Normalization – Normal Forms 1NF 2NF 3NF
SQL vs NoSQL (MongoDB)


Network

TCP/IP基础
IP 地址的基础知识
HTTPS 和 SSL/TLS 协议
HTTP 请求方法/状态码/错误处理/数据缓存
HTTP状态码
macOS终端使用代理网络
mtr 网络诊断工具
Setup WireGuard VPN
Configure HTTPS Server for Local Development Environment
Bypass CORS
IP Addressing, CIDR, and Subnet Mask


Linux

Vi 或 Vim 基础
Vim Basic
Wget
cURL
macOS上用VMWare虚拟机安装Ubuntu
Screen命令行窗口管理器
Linux常用查找命令
SSH登录远程主机
Transfer Files with Server: scp and sftp
创建软链接
Linux文件权限
配置网站的IP地址到hosts中
使用 Nginx 部署静态网站(含配置 HTTPS)
Linux 进程和线程
Linux 查看文件大小
Debian 安装教程
在 Debian 上安装和使用 openmediavault
VS Code Remote development over SSH
Linux System Log Size Optimization
Commonly Used Docker Commands


Git

Git_1 了解 Git(git --version)
Git_2 Git 配置(git config)
Git_3 Git 文件的三种状态及其生命周期(git status,已修改modified、已暂存staged、已提交committed)
Git_4 仓库初始化/克隆现有仓库(git init/clone、add、commit)
Git_5 记录每次更新到仓库(git add、commit)
Git_6 远程仓库的使用(以 GitHub 为例)(git init、remote、add、commit、push)
Git_7 提交历史(git log & git log --graph)
Git_8 撤销操作(git commit --amend、git reset HEAD \
Git_9 打标签(git tag)
Git branch management
GitHub for Windows
IntelliJ IDEA 提交代码到 GitHub
GitHub Pages
你必须收藏的Github技巧
Git 远程操作(以 GitHub 为例)(git checkout、remote、push、pull、fetch、merge)
Ubuntu搭建Git服务器
git部署项目代码至服务器
macOS更新git
fork - PR 操作流程(以 GitHub 为例)
Commit Message Format
Use git and GitHub to contribute to a project in a team
Work With Two Git/GitHub Accounts On One Computer
Git Commands versus SVN Commands


Kubernetes/Docker

Commonly Used Docker Commands
Run Kubernetes Dashboard


Others

Why GitHub Issues?
Markdown 语法
Markdown 是什么?
使用Markdown(Typora)绘制图表
分辨率相关:屏幕尺寸、px、pt、em,物理像素和逻辑像素,以及 DPI、PPI
《写给大家看的设计书》读书笔记
三月一科技 VI 设计 - 简要说明
番茄工作法
博弈论
二进制
General number bases (binary, octal, decimal, hex...)
Signed binary numbers: Two's complement
Binary floating-point numbers
字符编码笔记:ASCII,Unicode和UTF-8
IaaS,PaaS及SaaS三种云服务的比较及对应的提供商
Make big dreams, take small steps
Anna Quindlen 的《不曾走过,怎会懂得》
王小波的《一只特立独行的猪》
趋势
莫欺少年穷
Mac 使用「预览」来合并两张图片
Homebrew:macOS软件包管理工具
Mac - iTerm 基础配置
macOS 11 手动配置 Terminal (zsh)
Mac 终端文件目录树状(tree)显示
2017年终总结
《无问西东》台词摘录
《人类简史》摘录
LCD、OLED等显示器基础知识
英语音标
了解区块链
FFmpeg 音视频转码命令
搜索引擎-搜索技巧
Artificial Intelligence, Machine Learning, and Deep Learning
Excerpt from Clean Code: A Handbook of Agile Software Craftsmanship
Agile Fundamentals
Design Thinking - Fundamentals