博客园 - harelion
uuid:6cbd1ba2-f883-4c34-aed1-30dde64a3a3e;id=719335
2020-11-23T09:21:28Z
harelion
https://www.cnblogs.com/harelion/
feed.cnblogs.com
https://www.cnblogs.com/harelion/p/14025634.html
使用动态规划算法解释硬币找零问题 - harelion
原文链接 硬币找零问题被公认为动态规划算法的典型应用,其解法包含了动态规划的计算机思想。维基百科上对于动态规划是这样定义的: “是一种数学优化方法,也是计算机编程方法...它是指通过将一个复杂问题分解为许多简单的子问题的简化过程” 换句话说,动态规划是一种将问题简化为许多更小的问题的编程方法。例如,
2020-11-23T09:18:00Z
2020-11-23T09:18:00Z
harelion
https://www.cnblogs.com/harelion/
【摘要】原文链接 硬币找零问题被公认为动态规划算法的典型应用,其解法包含了动态规划的计算机思想。维基百科上对于动态规划是这样定义的: “是一种数学优化方法,也是计算机编程方法...它是指通过将一个复杂问题分解为许多简单的子问题的简化过程” 换句话说,动态规划是一种将问题简化为许多更小的问题的编程方法。例如, <a href="https://www.cnblogs.com/harelion/p/14025634.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/harelion/p/9128674.html
async/await工作机制探究--NodeJS - harelion
ES6中的async/await让Promise变得更加简便,通常await处理的链式Promise会包裹在函数中,返回结果仍然是一个Promise对象。 但是当await直接处理链式Promise时,编译器是会返回一个Promise对象等待下次await,还是继续执行Promise对象直到返回结果
2018-06-03T04:04:00Z
2018-06-03T04:04:00Z
harelion
https://www.cnblogs.com/harelion/
【摘要】ES6中的async/await让Promise变得更加简便,通常await处理的链式Promise会包裹在函数中,返回结果仍然是一个Promise对象。 但是当await直接处理链式Promise时,编译器是会返回一个Promise对象等待下次await,还是继续执行Promise对象直到返回结果 <a href="https://www.cnblogs.com/harelion/p/9128674.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/harelion/p/8496360.html
[翻译] Python 3.5中async/await的工作机制 - harelion
Python 3.5中async/await的工作机制 多处翻译出于自己理解,如有疑惑请参考原文 原文链接 身为Python核心开发组的成员,我对于这门语言的各种细节充满好奇。尽管我很清楚自己不可能对这门语言做到全知全能,但哪怕是为了能够解决各种issue和参与常规的语言设计工作,我也觉得有必要试着
2018-03-03T04:45:00Z
2018-03-03T04:45:00Z
harelion
https://www.cnblogs.com/harelion/
【摘要】Python 3.5中async/await的工作机制 多处翻译出于自己理解,如有疑惑请参考原文 原文链接 身为Python核心开发组的成员,我对于这门语言的各种细节充满好奇。尽管我很清楚自己不可能对这门语言做到全知全能,但哪怕是为了能够解决各种issue和参与常规的语言设计工作,我也觉得有必要试着 <a href="https://www.cnblogs.com/harelion/p/8496360.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/harelion/p/8323783.html
AngularJS学习笔记 - harelion
最近换了工作,新环境主推AngularJS4,学习其他之余,看了AngularJS的教程,有备无患。笔记主要基于Angular2,其中观点只是目前的感受,也许经过正式项目之后,会有更全面的看法。 1. AngularJS的优点 1) 规范了HTML元素的绑定方式与页面上的数据传递,页面元素的所有操作
2018-01-21T03:47:00Z
2018-01-21T03:47:00Z
harelion
https://www.cnblogs.com/harelion/
【摘要】最近换了工作,新环境主推AngularJS4,学习其他之余,看了AngularJS的教程,有备无患。笔记主要基于Angular2,其中观点只是目前的感受,也许经过正式项目之后,会有更全面的看法。 1. AngularJS的优点 1) 规范了HTML元素的绑定方式与页面上的数据传递,页面元素的所有操作 <a href="https://www.cnblogs.com/harelion/p/8323783.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/harelion/p/7784133.html
express的web server设置流程 - harelion
对于express的设置,一直是拿来就用,只知其然,今天查了一下文档,记录详细过程如下。 1、实现基本常用功能需要的模块path 用来处理路径字符串拼接,设置模板路径和静态资源路径时使用cookie-parser 设置应用的请求对cookie的支持body-parser 处理request请求内容,
2017-11-04T10:40:00Z
2017-11-04T10:40:00Z
harelion
https://www.cnblogs.com/harelion/
【摘要】对于express的设置,一直是拿来就用,只知其然,今天查了一下文档,记录详细过程如下。 1、实现基本常用功能需要的模块path 用来处理路径字符串拼接,设置模板路径和静态资源路径时使用cookie-parser 设置应用的请求对cookie的支持body-parser 处理request请求内容, <a href="https://www.cnblogs.com/harelion/p/7784133.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/harelion/p/7634836.html
nodejs学习笔记(3) - harelion
在看了Node8的特性后的总结,后续慢慢补充。 主要是针对一些编码规范,Node的v8引擎由于不同于其他语言的解析策略,因此需要注意一些特殊的方面。 1、try/catch使用对代码运行性能影响明显,尽量减少使用范围写在for循环体内的try/catch语句可能会与代码优化引擎冲突,引起反优化/再优
2017-10-07T07:26:00Z
2017-10-07T07:26:00Z
harelion
https://www.cnblogs.com/harelion/
【摘要】在看了Node8的特性后的总结,后续慢慢补充。 主要是针对一些编码规范,Node的v8引擎由于不同于其他语言的解析策略,因此需要注意一些特殊的方面。 1、try/catch使用对代码运行性能影响明显,尽量减少使用范围写在for循环体内的try/catch语句可能会与代码优化引擎冲突,引起反优化/再优 <a href="https://www.cnblogs.com/harelion/p/7634836.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/harelion/p/7105388.html
MySQL数据库常用操作语法 - harelion
1. 数据库初始化配置 1.1. 创建数据库 create database apps character set utf8 collate utf8_bin;创建数据库”app“,指定编码为utf8 1.2. 创建用户 create user 'apps'@'localhost' identifi
2017-07-02T02:46:00Z
2017-07-02T02:46:00Z
harelion
https://www.cnblogs.com/harelion/
【摘要】1. 数据库初始化配置 1.1. 创建数据库 create database apps character set utf8 collate utf8_bin;创建数据库”app“,指定编码为utf8 1.2. 创建用户 create user 'apps'@'localhost' identifi <a href="https://www.cnblogs.com/harelion/p/7105388.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/harelion/p/7105318.html
MongoDB中的读写锁 - harelion
原文地址 1. MongoDB 使用的锁 MongoDB 使用的是“readers-writer”锁, 可以支持并发但有很大的局限性当一个读锁存在,许多读操作可以使用这把锁,然而, 当一个写锁的存在,一个单一的写操作会”exclusively“持有该锁,同一时间其它写操作不能使用共享这个锁;举个例子
2017-07-02T02:29:00Z
2017-07-02T02:29:00Z
harelion
https://www.cnblogs.com/harelion/
【摘要】原文地址 1. MongoDB 使用的锁 MongoDB 使用的是“readers-writer”锁, 可以支持并发但有很大的局限性当一个读锁存在,许多读操作可以使用这把锁,然而, 当一个写锁的存在,一个单一的写操作会”exclusively“持有该锁,同一时间其它写操作不能使用共享这个锁;举个例子 <a href="https://www.cnblogs.com/harelion/p/7105318.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/harelion/p/6616989.html
MongoDB中设置expire过期自动删除 - harelion
关键词: expireAfterSeconds、TTL TTL Time to Live 类似Redis中的expire机制,MongoDB也可以设置过期自动删除的表。 MongoDB的过期设置依赖索引(TTL-index),设置过期字段使用的索引后,插入数据时在该字段指定日期时间, 经过在创建索引
2017-03-25T05:54:00Z
2017-03-25T05:54:00Z
harelion
https://www.cnblogs.com/harelion/
【摘要】关键词: expireAfterSeconds、TTL TTL Time to Live 类似Redis中的expire机制,MongoDB也可以设置过期自动删除的表。 MongoDB的过期设置依赖索引(TTL-index),设置过期字段使用的索引后,插入数据时在该字段指定日期时间, 经过在创建索引 <a href="https://www.cnblogs.com/harelion/p/6616989.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/harelion/p/6414305.html
解决shell命令"** is not in the sudoers file..."错误 - harelion
Linux中新建的普通用户一般不会分配给root权限,每次都su root也太麻烦,可以通过在/etc/sudoers文件中添加当前用户的方式,给当前用户赋予sudo命令的使用权限。 /etc/sudoers文件中配置的通用格式是: user host=(run_as) command 其中, us
2017-02-18T14:09:00Z
2017-02-18T14:09:00Z
harelion
https://www.cnblogs.com/harelion/
【摘要】Linux中新建的普通用户一般不会分配给root权限,每次都su root也太麻烦,可以通过在/etc/sudoers文件中添加当前用户的方式,给当前用户赋予sudo命令的使用权限。 /etc/sudoers文件中配置的通用格式是: user host=(run_as) command 其中, us <a href="https://www.cnblogs.com/harelion/p/6414305.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/harelion/p/6376699.html
不把DB放进容器的理由 - harelion
原文地址:http://www.tuicool.com/articles/6VbqeqQ 原文为英文,以下是笔者的个人总结。 此处的DB包括但不限于Redis、ElasticSearch。 1、数据安全Docker程序中断时,如果容器内的DB没有被正常关闭,可能造成数据丢失甚至如果容器损坏,内部的D
2017-02-08T01:29:00Z
2017-02-08T01:29:00Z
harelion
https://www.cnblogs.com/harelion/
【摘要】原文地址:http://www.tuicool.com/articles/6VbqeqQ 原文为英文,以下是笔者的个人总结。 此处的DB包括但不限于Redis、ElasticSearch。 1、数据安全Docker程序中断时,如果容器内的DB没有被正常关闭,可能造成数据丢失甚至如果容器损坏,内部的D <a href="https://www.cnblogs.com/harelion/p/6376699.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/harelion/p/6074403.html
文件名最大长度问题 - harelion
文件名和目录名在操作系统中都有最大长度的限制,而且不同系统中的最大长度不同。 这些限制在Linux系统下可以通过修改系统内核修改这个限制。 结论: 执行代码如下: Linux下执行结果为: $ python name_len_test.py Maximum length of file name i
2016-11-17T08:43:00Z
2016-11-17T08:43:00Z
harelion
https://www.cnblogs.com/harelion/
【摘要】文件名和目录名在操作系统中都有最大长度的限制,而且不同系统中的最大长度不同。 这些限制在Linux系统下可以通过修改系统内核修改这个限制。 结论: 执行代码如下: Linux下执行结果为: $ python name_len_test.py Maximum length of file name i <a href="https://www.cnblogs.com/harelion/p/6074403.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/harelion/p/6015105.html
ln in Linux - harelion
默认情况(硬连接) ln 目标 连接名称 ll -i 显示文件的inode信息,即文件节点信息 ➜ test1 ll -i 1.txt 27987655 -rw-r--r-- 1 myuser staff 8B 10 31 10:44 1.txt ➜ test1 ln 1.txt a ➜ test1
2016-10-31T02:58:00Z
2016-10-31T02:58:00Z
harelion
https://www.cnblogs.com/harelion/
【摘要】默认情况(硬连接) ln 目标 连接名称 ll -i 显示文件的inode信息,即文件节点信息 ➜ test1 ll -i 1.txt 27987655 -rw-r--r-- 1 myuser staff 8B 10 31 10:44 1.txt ➜ test1 ln 1.txt a ➜ test1 <a href="https://www.cnblogs.com/harelion/p/6015105.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/harelion/p/6012746.html
http与https的区别 - harelion
原文地址 自己收藏备用。 在URL前加https://前缀表明是用SSL加密的。你的电脑与服务器之间收发的信息传输将更加安全。Web服务器启用SSL需要获得一个服务器证书并将该证书与要使用SSL的服务器绑定。HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比http
2016-10-30T03:30:00Z
2016-10-30T03:30:00Z
harelion
https://www.cnblogs.com/harelion/
【摘要】原文地址 自己收藏备用。 在URL前加https://前缀表明是用SSL加密的。你的电脑与服务器之间收发的信息传输将更加安全。Web服务器启用SSL需要获得一个服务器证书并将该证书与要使用SSL的服务器绑定。HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比http <a href="https://www.cnblogs.com/harelion/p/6012746.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/harelion/p/5730315.html
关于Python的装饰器(2) - harelion
Python中被装饰器修饰的函数,解析后会生成一个参数是被修饰函数的装饰器函数对象,可以调用,可以接受传参(如果被修饰的函数定义了参数),实际调用的时候,尽管代码里值写了被修饰的函数,被调用的却是最终生成的复杂对象。对于这个对象,目前有以下几点疑问未得到确认: 1、最后生成的对象在被调用时,参数传递
2016-08-02T12:00:00Z
2016-08-02T12:00:00Z
harelion
https://www.cnblogs.com/harelion/
【摘要】Python中被装饰器修饰的函数,解析后会生成一个参数是被修饰函数的装饰器函数对象,可以调用,可以接受传参(如果被修饰的函数定义了参数),实际调用的时候,尽管代码里值写了被修饰的函数,被调用的却是最终生成的复杂对象。对于这个对象,目前有以下几点疑问未得到确认: 1、最后生成的对象在被调用时,参数传递 <a href="https://www.cnblogs.com/harelion/p/5730315.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/harelion/p/5730081.html
关于Python的装饰器(1) - harelion
Python的装饰器的概念,一直有点微妙。之前在StackOverflow上看过一篇感觉说明的很清楚的介绍: *A decorator must accept a function as an argument 参考地址: http://stackoverflow.com/questions/739
2016-08-02T10:27:00Z
2016-08-02T10:27:00Z
harelion
https://www.cnblogs.com/harelion/
【摘要】Python的装饰器的概念,一直有点微妙。之前在StackOverflow上看过一篇感觉说明的很清楚的介绍: *A decorator must accept a function as an argument 参考地址: http://stackoverflow.com/questions/739 <a href="https://www.cnblogs.com/harelion/p/5730081.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/harelion/p/5689732.html
Linux环境配置备忘 - harelion
1、Ubuntu服务器版本装scipy 预装版本可能fortran包版本过旧或者不全,安装scipy之前需要更新环境。 sudo apt-get install gfortran libopenblas-dev liblapack-devpip install scipy 2、Linux bash自
2016-07-20T13:10:00Z
2016-07-20T13:10:00Z
harelion
https://www.cnblogs.com/harelion/
【摘要】1、Ubuntu服务器版本装scipy 预装版本可能fortran包版本过旧或者不全,安装scipy之前需要更新环境。 sudo apt-get install gfortran libopenblas-dev liblapack-devpip install scipy 2、Linux bash自 <a href="https://www.cnblogs.com/harelion/p/5689732.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/harelion/p/5689729.html
Spark实施备忘 - harelion
AttributeError: 'SparkConf' object has no attribute '_get_object_id' 初始化SparkContext时出现这种错误是因为把SparkConf对象放在了参数第一个的位置,由于pyspark命令行会默认创建一个SparkContext,
2016-07-20T13:09:00Z
2016-07-20T13:09:00Z
harelion
https://www.cnblogs.com/harelion/
【摘要】AttributeError: 'SparkConf' object has no attribute '_get_object_id' 初始化SparkContext时出现这种错误是因为把SparkConf对象放在了参数第一个的位置,由于pyspark命令行会默认创建一个SparkContext, <a href="https://www.cnblogs.com/harelion/p/5689729.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/harelion/p/5637767.html
RuntimeError: Python is not installed as a framework 错误解决方案 - harelion
在virtualenv环境下使用matplotlib绘图时遇到了这样的问题: >>> import matplotlib.pyplot as pltTraceback (most recent call last): File "<stdin>", line 1, in <module> ... i
2016-07-03T03:34:00Z
2016-07-03T03:34:00Z
harelion
https://www.cnblogs.com/harelion/
【摘要】在virtualenv环境下使用matplotlib绘图时遇到了这样的问题: >>> import matplotlib.pyplot as pltTraceback (most recent call last): File "<stdin>", line 1, in <module> ... i <a href="https://www.cnblogs.com/harelion/p/5637767.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/harelion/p/5598039.html
使用正则表达式验证素数 - harelion
今天看到了这种相当奇妙的验证方法,原代码是JS的,但是算法对于py同样适用。 原代码如下: 试验结果显示这种算法确实有效。 这个算法实际上是讲数字转换成全为1的长度等于数值大小的字符串,然后对字符串进行匹配。 在非贪婪模式下,11+可以匹配11,也可以匹配到111,然后通过\1反向引用,可以同时匹配
2016-06-19T06:35:00Z
2016-06-19T06:35:00Z
harelion
https://www.cnblogs.com/harelion/
【摘要】今天看到了这种相当奇妙的验证方法,原代码是JS的,但是算法对于py同样适用。 原代码如下: 试验结果显示这种算法确实有效。 这个算法实际上是讲数字转换成全为1的长度等于数值大小的字符串,然后对字符串进行匹配。 在非贪婪模式下,11+可以匹配11,也可以匹配到111,然后通过\1反向引用,可以同时匹配 <a href="https://www.cnblogs.com/harelion/p/5598039.html" target="_blank">阅读全文</a>