学习Javascript闭包(Closure)

闭包(closure)是Javascript语言的一个难点,也是它的特色,很多高级应用都要依靠闭包实现。下面就是我的学习笔记,对于Javascript初学者应该是很有用的。一、变量的作用域要理解闭包,首先必须理解Javascript特殊的变量作用域。变量的作用域无非就是两种:全局变量和局部变量。Javascript语言的特殊之处,就在于函数内部可以直接读取全局变量。  var n=999; ...

阅读全文>>

Dijkstra最短路算法

上周我们介绍了神奇的只有五行的Floyd最短路算法,它可以方便的求得任意两点的最短路径,这称为“多源最短路”。本周来来介绍指定一个点(源点)到其余各个顶点的最短路径,也叫做“单源最短路径”。例如求下图中的1号顶点到2、3、4、5、6号顶点的最短路径。与Floyd-Warshall算法一样这里仍然使用二维数组e来存储顶点之间边的关系,初始值如下。我们还需要用一个一维数组dis来存储1号顶点到其余各个...

阅读全文>>

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,而且最好做好相关防护,不然端口很可能被扫爆。更...

阅读全文>>