C++ 17 的 list 和 map

本节例子选自: https://gist.github.com/JeffPaine/6213790对 python 这样的动态语言最直观的感受就是 list/map 两种数据结构打天下。 php 和 lua 甚至把这两个都合并成一种数据结构了。 毋庸置疑,学会如何使用 list 和 map 是基础中的基础。for 循环Python 版本import unittest class T...

阅读全文>>

maxmin悲观准则(最大最小准则)

本题属于决策分析范畴。所谓决策,简单地说就是做决定的意思,详细地说,就是为确定未来某个行动的目标,根据自己的经验,在占有一定信息的基础上,借助于科学的方法和工具,对需要决定的问题的诸因素进行分析、计算和评价,并从两个以上的可行方案中,选择一个最优方案的分析判断过程。根据决策结局的多少,可以将决策分为确定型决策(每个方案只有一个结局)和不确定型决策(每个方案有多个结局)。由于不确定型决策问题所面临的...

阅读全文>>

Visual Studio 2017 默认保存为UTF8编码

Visual Studio (中文版)默认保存的文本文件是`GB2312`编码(代码页936)的,默认的行尾(End of line)是CRLF的。如果仅仅是在windows下开发问题也不大,但是涉及到跨平台开发的时候,就不是很满意了。VS本身的 文件 -> 高级保存选项 中是可以选择保存的编码和行尾的,但是不支持为默认的。还有一个问题是`cl`编译的时候,对`utf-8...

阅读全文>>

C++的头文件和实现文件分别写什么

概览头文件(.h)全局变量申明(带extern限定符)全局函数的申明带inline限定符的全局函数的定义带inline限定符的全局模板函数的申明和定义类的定义类函数成员和数据成员的申明(在类内部)类定义内的函数定义(相当于inline)带static const限定符的数据成员在类内部的初始化带inline限定符的类定义外的函数定义模板类的定义模板类成员的申明和定义(定义可以放在类内或者类外,类外...

阅读全文>>

Cloudflare 关闭 IPv6 自适应的方法

Cloudflare 是一家来自美国的著名 CDN 服务提供商,可以说是全球最大的 CDN 服务提供商了。虽然因为某些原因,在国内起不到加速的作用,但是多数地区都能正常打开,而且提供自动的 HTTPS 加密服务,不需要单独申请证书,可以说非常良心了。而且 Cloudflare 提供自动 IPv6 适配服务,这个功能非常好,在支持 IPv6 的网络可以优先选择,但是也产生了很多问题。当前大部分的程序...

阅读全文>>

Python 快速排序(Quicksort)

思路说明快速排序算法是一种基于交换的高效的排序算法,由C.R.A.Hoare于1962年提出,是一种划分交换排序。它采用了一种分治的策略,通常称其为分治法(Divide and conquer algorithm)。分治法的基本思想将原问题分解为若干个规模更小但结构与原问题相似的子问题。递归地解这些子问题,然后将这些子问题的解组合为原问题的解。快速排序的基本思想从数列中取出一个数作为基准数(枢轴,...

阅读全文>>

Python main函数

前记今年4月份入学了东洋大学的情报连携学部,学校的教材也比较新,目前大一入学之后直接开始学习Python,比起国内许多大学信息相关的学科还在学习连C99规范都不支持的VC6环境下面编写C程序,我觉得我们学校的东西简直太有干货了……我学习和编写C/C++语言已经有大概七八年时间,也有一些拿得出手的作品,算是比较熟悉了。就我个人的理解而言,总的来说,C语言是直接编译型语言,可以直接编译成机器码,让CP...

阅读全文>>

树莓派3B 搭建ss服务端笔记

目前家里在用SoftBank的光网,1000M上下对等,而且是直连国内的线路,大部分时间连接国内网络都在30ms左右,平时带宽基本上闲置。这几天看了下路由器里居然有端口转发功能,于是手头树莓派搭了个LNMP试了下,居然80和443端口都可以直接转发,那ss肯定没问题了…于是简单鼓捣一下,尝试搭建个ss服务端。准备当然,安装之前,需要打开树莓派的ssh,而且最好做好相关防护,不然端口很可能被扫爆。更...

阅读全文>>

Ubuntu 18.04 快速配置 LNMP 笔记

目前这台 VPS 是运行在日本 IDCF 的最低配的 VPS , CN2 线路,虽然有时候会抽,但是最低延迟只有 30ms 左右,应该是日本这边我能买到的连国内最快的了。但是配置有多低呢,低到 RAM 只有 0.8 GB, 1CPU 0.8Ghz 。本来打算运行 CentOS 7.4 然后用 LNMP一键安装包直接编译安装的,无奈在 SSH 里头这个自动编译...

阅读全文>>

Ubuntu 16.04 升级到 18.04 LTS 笔记

更新Ubuntu 16.04在升级之前,先更新当前的16.04至最新状态。建议升级之前更新/升级所有已安装的软件包。首先更新APT源和软件包至最新sudo apt update && sudo apt dist-upgrade && sudo apt autoremove安装和配置Ubuntu update manager更新完组件后,运行以下命令安装update-...

阅读全文>>