感悟编程

记录研究生学习技术过程的点滴

partition算法思想的应用

1.partiton实现 partition(int[] a, int left, int right) int x = a[right];这行代码选中一个主元,这里我们每次选择的都是当前序列中最右边那个。int p = left - 1;这行代码保存了一个变量p,用来记录比主元小的所有元素中...

2016-08-21 17:09:12

阅读数 425

评论数 0

Python 导入机制 - import hook

Python import hook可以翻译为Python 探针。 它的实现原理涉及了以下几个知识点: 1. Python导入协议 2. sys.meta_path一,Python导入协议 Python 中所有加载到内存的模块都放在 sys.modules。当import 一个...

2016-07-26 18:31:34

阅读数 6991

评论数 1

Python导入机制-查找模块

查找module的过程在import的第一个阶段,主要是完成了查找要引入模块的功能,这个查找的过程如下:检查 sys.modules (保存了之前import的类库的缓存),如果module被找到,则⾛到第二步。 检查 sys.meta_path。meta_path 是一个 list,⾥面保存着一...

2016-07-06 10:40:20

阅读数 4347

评论数 0

Git 常用命令详解

Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如:linux kernel),管理私人的文档和源代码也有很多优势(如:wsi-lgame-pro) Git 的更多介绍,请参考我的上一篇博客:Git 版本管理工具 一、 Git 命令初识 ...

2016-06-12 21:11:02

阅读数 299

评论数 0

c++友元

通过友元的方式,某个普通函数或者类的成员函数可以访问某个类中的私有数据,友元提供了一种不同类或对象的成员函数之间、类的成员函数与普通函数之间共享数据的机制。   有两种形式的友元: (1)友元函数:普通函数对一个访问某个类中的私有或保护成员。 (2)友元类:类A中的成员函数访问类B中的私有或...

2016-06-11 17:51:13

阅读数 268

评论数 0

指针与引用c

引用的基本概念:指针和引用之间的区别: 总结如下: (1)非空区别. 引用被创建的同时必须被初始化(指针则可以在任何时候被初始化)。 并且不能有NULL引用,引用必须与合法的存储单元关联(指针则可以是NULL),一个引用必须总是指向某些对象. (2)可修改区别:指针可以重新赋值以指向另一个不...

2016-06-11 15:15:57

阅读数 283

评论数 0

C++学习笔记  指针与引用的区别

define: 宏定义。 在编译预处理时,对程序中所有出现的“宏名”,都用宏定义中的字符串去代换,这称为“宏代换”或“宏展开”。宏定义是由源程序中的宏定义命令完成的。宏代换是由预处理程序自动完成的。由预处理器处理。define ASPECT_RATIO 1.653记号名称ASPECT_RATIO...

2016-06-11 14:56:40

阅读数 263

评论数 0

C++学习笔记 代替define

define: 宏定义。 在编译预处理时,对程序中所有出现的“宏名”,都用宏定义中的字符串去代换,这称为“宏代换”或“宏展开”。宏定义是由源程序中的宏定义命令完成的。宏代换是由预处理程序自动完成的。由预处理器处理。 #define ASPECT_RATIO 1.653 记号名称ASP...

2016-06-11 14:26:47

阅读数 820

评论数 0

C++学习笔记-构造函数

1.构造函数        构造函数的作用就是在对象被创建时利用特定的初始值构造对象,把对象置于某一个初始状态,它在对象被创建的时候由系统自动调用,我们只需要使用默认的构造函数或者自己定义构造函数,而不用管怎么调用的。        构造函数也是类的成员函数,除了有成员函数的所有特征外,还有一些不...

2016-06-07 16:20:00

阅读数 280

评论数 0

探索 Python 代码对象

由于受到 David Beazley 在 PyCon 上的 Keynote 的启发,近来我四处学习与 Python 代码对象 (code object) 相关的内容。我并没有什么特别的利器,也没有专门的任务去解决 (至今为止?),所以请将这篇文章看做一些也许有趣的记录和随笔 (如果没意...

2016-05-26 09:01:29

阅读数 1029

评论数 0

Python Import机制备忘-模块搜索路径(sys.path)、嵌套Import、package Import

最近在看《Python源码剖析》,对Python内部运行机制比以前了解的更深入了,感觉自己有机会也可以做个小型的动态脚本语言了,呵呵,当然是吹牛了。目的当然不是创造一个动态语言,目的只有一个:更好的使用Python。看到模块导入那块的时候,终于对模块导入机制比较了解了,以防忘记特记录下来。 ...

2016-05-25 16:02:14

阅读数 328

评论数 0

C++运算符重载

要点总结如下: 1.前置单目运算符重载和后置单目运算符重载在语法形式上的区别就是前者重载函数没有形参,而后者重载函数有一个整型形参,此形参对函数体没有任何影响,这只是语法上的规定,仅仅是为了区分前置和后置。 // 前置--运算符重载 Coordinate &ope...

2016-05-24 10:27:33

阅读数 402

评论数 0

Python 调用 Shell脚本的方法

1.os模块的popen方法 通过 os.popen() 返回的是 file read 的对象,对其进行读取 read() 的操作可以看到执行的输出。>>> os.popen('date -u |wc') <open file 'date -u |wc', mode 'r...

2016-05-20 17:50:56

阅读数 1091

评论数 0

PBE加密系统

最近在做一个python方面的加密项目, 公司要求对加密系统的密钥进行加强保护,目前比较好的方法是混合加密系统 或者PBE 加密系统,前者是使用非对称算法加密密钥,后者一般还是用对称算法加密密钥. 基于口令的密码(PBE),就是一种根据口令生成密钥并用该密钥进行加密的密钥保护方法,其特点在于口令由...

2016-05-18 16:01:12

阅读数 803

评论数 0

GIT入门学习1

欢迎使用Markdown编辑器写博客重点内容本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦: Markdown和扩展Markdown简洁的语法 代码块高亮 图片链接和图片上传 LaTex数学公式 UML序列图和流程图 离线写博客 导入导出Markdown文...

2016-05-18 11:00:30

阅读数 221

评论数 0

Linux内核-进程地址空间

下图是x86_64下linux进程的默认内存布局形式: 下面逐一分析以上各个地址段的含义。   text 代码段 代码段,从虚拟内存地址00400000开始,使用pmap $$可以查看到,这个地址是固定的: linux # pmap $$ 27729: bash START ...

2015-08-28 09:07:58

阅读数 394

评论数 0

Linux 硬连接 软连接

在 Linux 系统中查看 inode 号可使用命令 stat 或 ls -i(若是 AIX 系统,则使用命令 istat)。清单 3.中使用命令 mv 移动并重命名文件 glibc-2.16.0.tar.xz,其结果不影响文件的用户数据及 inode 号,文件移动前后 inode 号均为:2...

2015-08-26 21:07:57

阅读数 338

评论数 0

Linux挂载

Mount命令使用 一般主要使用 -t选项 指定设备的文件系统类型 比如ext2  挂载点必须已经存在的目录 挂载点的内容如要删除 必须首先执行umount命令 mount和umount实际上做了什么?为什么需要挂载,将/dev/hdc挂...

2015-08-25 09:14:37

阅读数 588

评论数 0

linux下的 fork vfork和clone函数

Linux的用户进程不能直接被创建出来,因为不存在这样的API。它只能从某个进程中复制出来,再通过exec这样的API来切换到实际想要运行的程序文件。     复制的API包括三种:fork、clone、vfork。     这三个API的内部实际都是调用一个内核内部函数do_fork...

2015-08-24 22:59:42

阅读数 293

评论数 0

Shell脚本学习笔记

find 命令 1.基于文件名或者正则表达式搜索 例子:匹配多个条件 find . \( -name "*.txt" -o -name "*.pdf" \) -print 找到当前目录中所有txt pdf文件输出       加-o 表示OR条件  \(...

2015-08-17 22:02:06

阅读数 289

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭