如何用C表示排列组合?

摘要: 问题来自《Linux C一站式编程》,是个挺有意思的题目。2、定义一个数组,编程打印它的全排列。比如定义:#define N 3 int a[N] = { 1, 2, 3 };则运行结果是:$ ./a.out1 2 3 1 3 2 2 1 3 2 3 1 3 2 1 3 1 2程序的主要思路是:把第... 阅读全文
posted @ 2014-10-16 00:22 SZlibraco 阅读(2231) 评论(0) 推荐(0) 编辑

用类型别名定义指针的一点小细节

摘要: C++ Primer 里讲,如果用*号紧靠类型名的方式定义多个变量,那么只有第一个变量会是指针类型,后续变量不会被定义为指针。double* i,j; // i是double类型指针,j是double类型变量然后在typedef定义类型别名的时候讲 typedef double *p 使得成为double*的同义词,那么使用p定义多个变量会是怎样的情况呢?答案如下:#include #include int main(){ typedef double *p; double* i, j; p x,y; // p means double* std::cout <<... 阅读全文
posted @ 2014-03-26 21:45 SZlibraco 阅读(280) 评论(0) 推荐(0) 编辑

C&python文件读写效率

摘要: 不同缓冲区读写文件的效率比较环境:CentOS6.3/ext3/读取文件大小:100000000BBUFSIZETIMECOST1real 0m38.909suser 0m5.960ssys 0m32.888s2real 0m20.015suser 0m2.927ssys 0m17.063s4real 0m11.065suser 0m1.551ssys 0m9.491s8real 0m5.160suser 0m0.766ssys 0m4.390s16real 0m2.670suser 0m0.360ssys 0m2.310s32real 0m1.306suser 0m0.181ssys 0m1 阅读全文
posted @ 2014-03-14 16:16 SZlibraco 阅读(1058) 评论(0) 推荐(0) 编辑

全栈工程师

摘要: 全栈工程师,也叫全端工程师,英文Full Stack developer。是指掌握多种技能,并能利用多种技能独立完成产品的人。这是百度百科里的关于全栈工程师的解释,其实就是要求工程师技能的广度,从解决问题的需要出发而不是仅仅从技术角度出发,里面有句话写的很好:技术有两个发展方向,一种是纵向一种是横向的,横向的是瑞士军刀,纵向的是削铁如泥的干将莫邪。这两个方向都没有对与错,发展到一定程度都会相互溶合,就好比中国佛家禅修的南顿北渐,其实到了最后,渐悟与顿悟是一样的,顿由渐中来。 阅读全文
posted @ 2014-02-07 11:28 SZlibraco 阅读(267) 评论(0) 推荐(0) 编辑

Node.js连接Mysql

摘要: 1.安装npm install mysql注意要复制node_modules到当前工程的文件夹中2.基本连接/** * Created by Administrator on 13-12-25. */var mysql = require('mysql');var connection = mysql.createConnection({ host:'192.168.41.104', user:'email', password:'123456', insecureAuth: true});connection.connect() 阅读全文
posted @ 2013-12-25 15:10 SZlibraco 阅读(965) 评论(0) 推荐(0) 编辑

Clover:让Windows下的资源管理器具有Chrome一样的标签页

摘要: 这个小巧实用的插件第一次激发了我给人捐款的冲动。不多说,上图看效果:具有和Chrome一样的书签功能,以网页的形式保存本地位置,将常用目录放在书签上十分方便。多标签相比多窗口的优势不需要我多说,懂的人自然懂,这是俺们的福音。性能及设计没有研究。欢迎大家补充!Clover传送门:http://cn.ejie.me/ 阅读全文
posted @ 2013-12-11 13:12 SZlibraco 阅读(252) 评论(0) 推荐(0) 编辑

Python中查找字符串方法的速度比较

摘要: 阅读全文
posted @ 2013-11-19 15:12 SZlibraco 阅读(654) 评论(0) 推荐(0) 编辑

Simple Arithmetics

摘要: def Add(a, b): l = [] alen = len(a) blen = len(b) result = str(int(a) + int(b)) relen = len(result) llen = alen > blen and alen or blen+1 llen = relen > llen and relen or llen l.append(' ' * (llen - alen) + a) l.append(' ' * (llen - blen - 1) + '+' + b) l.append('-& 阅读全文
posted @ 2013-11-14 23:23 SZlibraco 阅读(462) 评论(0) 推荐(0) 编辑

vim粘贴代码格式变乱

摘要: 转自netingcn.com有时候从编辑器里面复制粘贴代码到vim中,代码格式会完全乱套。其原因是vim开启了smartindent(智能缩减)或autoindent(自动对齐)模式。为了保持代码的格式,在粘贴前可以先停止上面的两种模式,命令为:set nosmartindentset noautoindent上述命令是在vim的阅读模式先输入冒号(:),然后分别执行即可。为了一个粘贴搞出这么多事来,确实是麻烦。不过还有一个更加简单的方法,用命令开始粘贴模式,即:开启 set paste关闭 set nopaste或 set paste!由于粘贴模式和上面的smartindent、autoin 阅读全文
posted @ 2013-10-30 10:45 SZlibraco 阅读(927) 评论(0) 推荐(0) 编辑

基于BaseHTTPServer的简单存储服务器

摘要: 服务器代码:from BaseHTTPServer import BaseHTTPRequestHandler from BaseHTTPServer import HTTPServer import cgiimport osclass MyHTTPRequestHandler( BaseHTTPRequestHandler ): def do_GET( self ): pass def do_POST(self): form = cgi.FieldStorage( # cgi.FieldStorage实例效... 阅读全文
posted @ 2013-10-29 12:25 SZlibraco 阅读(814) 评论(0) 推荐(0) 编辑