摘要: "课程地址" 南京大学的骆斌老师主讲的,考研可能会用得上 计算机系统的组成 计算机系统:包括硬件子系统和软件子系统 硬件:借助电、磁、光、机械等原理构成的各 种物理部件的有机组合,是系统工作的实体 CPU,主存储器,I/O控制系统,外围设备 软件:各种程序和文件,用于指挥计算机系统 按指定的要求进行 阅读全文
posted @ 2016-06-25 21:09 KIWI的博客 阅读(1729) 评论(2) 推荐(1) 编辑
摘要: C语言给我们提供了几个基本的数据类型,比如char(8位),short(16位),int(32位),long long(64位)。然而实际应用中,这些数据类型的变量一般都不会“存满”,这样从信息存储的效率的角度上讲,这是一种“浪费”。好在C语言在结构体中引入了Bit fields这种数据结构,可以在... 阅读全文
posted @ 2016-01-03 01:46 KIWI的博客 阅读(1847) 评论(1) 推荐(0) 编辑
摘要: 看内核时总遇到if(likely( )){}或是if(unlikely( ))这样的语句,最初不解其意,现在有所了解,所以也想介绍一下。likely() 与 unlikely()是内核(我看的是2.6.22.6版本,2.6的版本应该都有)中定义的两个宏。位于/include/linux/compil... 阅读全文
posted @ 2016-01-02 22:15 KIWI的博客 阅读(1222) 评论(0) 推荐(0) 编辑
摘要: 快速排序在实际应用中会面对大量具有重复元素的数组。例如加入一个子数组全部为重复元素,则对于此数组排序就可以停止,但快排算法依然将其切分为更小的数组。这种情况下快排的性能尚可,但存在着巨大的改进潜力。(从O(nlgn)提升到O(n)) 一个简单的想法就是将数组分为三部分:小于当前切分元素的部分,等于当 阅读全文
posted @ 2015-12-07 16:34 KIWI的博客 阅读(6611) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://codeforces.com/contest/604/problem/C大致题意:给定一个01串以及其长度,求此串中符合形如“0101“或”101“这种01交错的序列(不必连续)的长度,并且你可以选定这个串中1段连续的子串进行反转(将0反转为1,将1反转为0),力求反转之后的... 阅读全文
posted @ 2015-12-03 13:16 KIWI的博客 阅读(260) 评论(0) 推荐(0) 编辑
摘要: 逆序(inversion)是指序列中具有性质“ia[j]“的序偶(a[i].a[j])。 例如:在序列34,8,64,51,32,21中具有9个逆序:(34,8),(34,32),(34,21),(64,51),(64,32),(64,21),(51,32),(51,21),(32,21);显而易... 阅读全文
posted @ 2015-12-03 12:22 KIWI的博客 阅读(429) 评论(0) 推荐(0) 编辑
摘要: 在计算机中,程序运行中的函数调用是借助栈实现的:每当进入一个新的函数调用,栈就会增加一层栈帧,每当函数返回,栈就会减少一层栈帧。这个栈的大小是有限的(貌似是1M或者2M)。所以在执行递归的过程中递归的次数是有限度的,超过某个不是很大的值就会爆栈(栈溢出)。以求解Fabonacci问题为例:使用递归的... 阅读全文
posted @ 2015-11-15 20:05 KIWI的博客 阅读(1421) 评论(0) 推荐(1) 编辑
摘要: 众所周知,Python语法要求在一份运行代码中的所有for,if/else的语句':'的下一行要统一缩进量(有’一个制表符(TAB键)‘,’两个空格‘,和’三个空格‘可以选择),如果缩进量不统一(比如TAB键和四个空格混用),则程序便会报错IndentationError: unindent doe... 阅读全文
posted @ 2015-10-29 23:08 KIWI的博客 阅读(6658) 评论(0) 推荐(0) 编辑
摘要: python在heap中分配的对象分成两类:可变对象和不可变对象。所谓可变对象是指,对象的内容是可变的,例如list。而不可变的对象则相反,表示其内容不可变。不可变(immutable):int、字符串(str)、float、(数值型number)、元组(tuple)、None(空)可变(mutab... 阅读全文
posted @ 2015-10-29 12:30 KIWI的博客 阅读(3769) 评论(0) 推荐(0) 编辑
摘要: Intent隐式启动Activity隐式启动的好处在于不需要在第一个组件中指明需要启动另外的哪一个组件,而由Android系统来决定,这样有利于降低组件之间的耦合度。选择隐式启动Activity,Android系统会在程序运行时解析Intent,并根据一定的规则对Intent和组件进行匹配,使Int... 阅读全文
posted @ 2015-10-28 22:21 KIWI的博客 阅读(290) 评论(0) 推荐(0) 编辑