瀚海星空

星空浩瀚 人类渺小

nodejs的execa库使用

概述 execa是可以调用shell和本地外部程序的javascript封装。会启动子进程执行。支持多操作系统,包括windows。如果父进程退出,则生成的全部子进程都被杀死。 安装 npm init npm i execa --save npm install babel-core --save-dev npm install babel-register --save-dev 入...

模逆元

模反元素也称为模倒数,或者模逆元。 一整数a对 同余n之模反元素是指满足以下公式的整数 b 也可以写成以下的式子 整数 a 对模数 n 之模反元素存在的充分必要条件是 a 和 n 互质,若此模反元素存在,在模数 n 下的除法可以用和对应模反元素的乘法来达成,此概念和实数除法的概念相同。 求模反元素 ` 用扩展欧几里得算法 设exgcd(a,n)为扩展欧几里得算法的函数,则可得到a...

mac下更新delve调试go语言

概述 delve 是golang调试程序。但如果版本不配套, mac下goland 调试,step over会不起作用,直接变成执行完毕或者到下一个断点。 需要更新调试器delve解决。 go get安装 mac下安装delve,官方教程是两步。 $ xcode-select --install xcode-select: error: command line tools are al...

如何调试nodejs代码

概述 nodejs由于没有界面,调试起来比较困难。本文介绍了一些用调试nodejs的方法和工具。 最方便的方式是用chrome调试nodejs。 zhouhh@/Users/zhouhh/git/uringsig $ node --inspect-brk index.js Debugger listening on ws://127.0.0.1:9229/3a1eaae7-2ede-4b...

如何生成es6项目

概述 本文描述了生成一个ES6项目的基本步骤。 初始化和安装 mkdir nodejs-es6 npm init y touch index.js npm install --save express npm install --save-dev babel-cli babel-preset-es2015 rimraf package.js { "name": "nodejs-e...

ES6特性实例

概述 ECMAScript (ES) 是由 ECMAScript International标准化的脚本语言. js一般用于客户端脚本。nodejs让javascript语言可以用于服务器端编程。 JavaScript由 网景(Netscape Communications Corporation)公司的开发者Brendan Eich在 1995年发明。JavaScript 早期叫 Moc...

a^b≡c(mod m)知二求一

概述 $a^b\equiv c \pmod m$ 对已知m,知二求一。 1. 快速幂 求同余数 $a^b\equiv x \pmod m$,求x 如果a,b均较小,计算机可以直接计算。但如果a,b和m都比较大,需要进行简化。 两个性质: 性质1: 设 则 证明: 性质2 设 则 证明 求解 如果(a,m)=1 互质,根据欧拉$a^{\phi m}...

离散对数概念

概念 同余运算 数学上,同余(congruence modulo,符号:$\equiv$)是数论中的一种等价关系。当两个整数除以同一个正整数,若得相同余数,则二整数同余。同余是抽象代数中的同余关系的原型。最先引用同余的概念与“$\equiv$”符号者为德国数学家高斯。 两个整数 a, b,若它们除以正整数 m所得的余数相等,则称 a, b对于模 m同余 记作 $ a\equiv b{\...

群论相关概念入门

概述 简单理解,群是一种代数结构,由一个集合以及一个二元运算所组成。 一个群必须满足一些被称为“群公理”的条件,也就是封闭性、结合律、单位元和对于集合中所有元素存在逆元素。 群与对称概念共有基础根源。对称群把几何物体的如此描述物体的对称特征:它是保持物体不变的变换的集合。这种对称群,特别是连续李群,在很多学术学科中扮演重要角色。 区块链中使用到的椭圆曲线公私钥和签名理论,用到群论知识...

spark rdd 转换和动作

概述 本文对spark rdd的转换和动作进行总结和实际操作演示. RDD(Resilient Distributed Datasets),弹性分布式数据集, 是spark分布式内存的一个抽象概念,RDD提供了一种高度受限的共享内存模型.即RDD是只读的记录分区的集合,只能通过在其他RDD执行确定的转换操作(如map、join和group by)而创建,然而这些限制使得实现容错的开销很低。 ...