摘要: 冒泡排序(Bubble Sort)很简单,如下图1所示,元素从下到上,遇到比当前元素小的交换,直到到达顶端。就像水里的气泡一样,小的最先升到顶端。冒泡排序C语言代码:1 void bubble_sort(int *s, int l, int r)//s表示整形数组,元素从l到r-1.2 {3 ... 阅读全文
posted @ 2014-11-12 10:50 哈士奇.银桑 阅读(835) 评论(0) 推荐(0) 编辑
摘要: C语言相关 1.实现atoi()/* atoi() * 作用:将字符串转换整形 * bug:未对溢出处理 * 版本:v0.1 * 作者:机器学习_佟铁 * 时间:20140712 */#include#include#define N 30int ato_i(char *s){ ... 阅读全文
posted @ 2014-07-12 23:39 哈士奇.银桑 阅读(159) 评论(0) 推荐(0) 编辑
摘要: 涉及到C语言、操作系统和思考题。多线程和多进程? 一个程序至少有一个进程,一个进程至少有一个线程。线程共享进程的内存空间,创建线程花费比进程小,线程是操作cpu的基本单元。线程有自己的私有空间,一般是寄存器和栈,用来存放自己的局部变量,线程间通信通过共享的全局变量通信即可。进程的优点是隔离度好... 阅读全文
posted @ 2014-07-11 23:36 哈士奇.银桑 阅读(264) 评论(0) 推荐(0) 编辑
摘要: 一些关于C语言和数据相关的面试题。1.内存对齐是什么?为了方便操作系统快速访问内存的一种策略。在结构体中(struct),变量存储的首地址是k(4、8)的倍数。可以使用#pragmapack(n)设置。参考:博客园内存对齐2.栈和堆的区别(内存)?实现一个2维数组,初始化。栈是由系统自动分配空间,自... 阅读全文
posted @ 2014-07-07 23:08 哈士奇.银桑 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 发现科大网页的源码中还有文章的点击率,何不做一个文章点击率的降序排行。简单,前面入门(1)基本已经完成我们所要的功能了,本篇我们仅仅需要添加:一个通过正则获取文章点击率的数字;再加一个根据该数字的插入排序。ok,大功告成!简单说一下本文插入排序的第一个循环,找到列表中最大的数,放到列表 0 的位置做... 阅读全文
posted @ 2014-07-01 12:09 哈士奇.银桑 阅读(469) 评论(0) 推荐(0) 编辑
摘要: 有人说大部分python程序员都是通过爬虫入门的或者都是由爬虫喜欢上python的。还有大部分人学爬虫都喜欢拿自己学校的网站练手。我就是基于以上两点开始的。。。ok,开始,首先你需要一点python基础,一点点基础就可以,找一本薄薄的书过一遍,可以上这来找找http://wiki.woodpecke... 阅读全文
posted @ 2014-06-30 23:29 哈士奇.银桑 阅读(450) 评论(0) 推荐(0) 编辑
摘要: 本文内容来自《pointers on C》栈的接口/* Interface for a stack module */#define STACK_TYPE intvoid push(STACK_TYPE value);void pop(void);STACK_TYPE top(void);in... 阅读全文
posted @ 2014-05-16 16:55 哈士奇.银桑 阅读(180) 评论(0) 推荐(0) 编辑
摘要: 基础知识 系统中最小的单位是Bit(位元、位) 1 Byte(字节)= 8 Bits 1 Kilobyte(KB)= 1024 Bytes Ext2中inode和block(实际记录文件内容的区域,1kb、2kb、4kb):inode大小是:128 Bytes,inode记录一个block需要花费4 Bytes。 为了记录更多的block,操作系统将inode记录block的区域划分为12个直接,1个间接,1个双间接,一个三间接记录区。(eg:将block设为 1kb,能容纳最大的文件是:12*1+256(1 Kb/4Bytes)*1+256*256*1+... 阅读全文
posted @ 2014-04-08 16:40 哈士奇.银桑 阅读(167) 评论(0) 推荐(0) 编辑
摘要: 2叉树(Binary Tree):是每个结点最多有左右两棵子2叉树相连接的树结构。性质:高度(height)1:根节点在第0层,树中节点层数的最大值,即外部结点层数的最大值。一棵有N个内部节点的2叉树有N+1个外部节点。图1关于2叉树的高度,维基百科2中说的深度,根节点的深度为1。深度为k的2叉... 阅读全文
posted @ 2014-03-31 11:53 哈士奇.银桑 阅读(215) 评论(0) 推荐(0) 编辑
摘要: 本文参考该作者文章当作编程笔记:作者:Hawstein出处:http://hawstein.com/posts/ctci-solutions-contents.htmlQ:写程序在一棵二叉树中找到两个结点的第一个共同祖先。不允许存储额外的结点。注意: 这里不特指二叉查找树。思路:首先,理解题义:不允许储存额外的结点。指的是,2叉树结点中除了左右孩子结点不应该有别的结点。然后,根节点一定是两个结点的祖先。那么我们只要向下遍历根节点的孩子,直到找到符合条件的最后一个祖先节点即可。CODE: 1 #include 2 #include 3 #define N 9 /*树的结点数*/ 4... 阅读全文
posted @ 2014-03-29 10:52 哈士奇.银桑 阅读(186) 评论(0) 推荐(0) 编辑