<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[ipiggg的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/ipiggg</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; ipiggg]]></copyright><item><title><![CDATA[vim 的一些设置]]></title><link>https://blog.youkuaiyun.com/ipiggg/article/details/1092695</link><guid>https://blog.youkuaiyun.com/ipiggg/article/details/1092695</guid><author>ipiggg</author><pubDate>Fri, 18 Aug 2006 12:51:00 +0800</pubDate><description><![CDATA[ 原来用的是FC4自动装的vim6.3，昨天换了vim7，后来有些用习惯了的东西就不能用了，只能自己设置了。vim 默认是不能用退格键删前文的，set bs=2　或者　 set backspace=indent,eol,start　就行了原来我习惯行号显示在屏幕的右下，主要是因为行号在左边的时候copy的时候会把行号一起copyset rusyntax on是不用说了我原来一直]]></description><category></category></item><item><title><![CDATA[给Java程序增加内存]]></title><link>https://blog.youkuaiyun.com/ipiggg/article/details/1065526</link><guid>https://blog.youkuaiyun.com/ipiggg/article/details/1065526</guid><author>ipiggg</author><pubDate>Tue, 15 Aug 2006 09:52:00 +0800</pubDate><description><![CDATA[ java -ms200M -mx900M ..... ]]></description><category></category></item><item><title><![CDATA[文本处理的一些C C++ STL函数]]></title><link>https://blog.youkuaiyun.com/ipiggg/article/details/965948</link><guid>https://blog.youkuaiyun.com/ipiggg/article/details/965948</guid><author>ipiggg</author><pubDate>Sun, 23 Jul 2006 23:40:00 +0800</pubDate><description><![CDATA[帮同学处理一个文本，好多函数不会，我想如果是熟工的话，1个小时之内就能搞定读取一行：FILE *fin = ....;char buf[BUFSIZE];fgets( buf, BUFSIZE, fin ); 确定一个字符在字符串中出现的位置（第一次）：int find;char* position;position = strchr(str, find);确定一些字符在字符串中出现的]]></description><category></category></item><item><title><![CDATA[等概率选取未知长度的链表中的元素]]></title><link>https://blog.youkuaiyun.com/ipiggg/article/details/935122</link><guid>https://blog.youkuaiyun.com/ipiggg/article/details/935122</guid><author>ipiggg</author><pubDate>Tue, 18 Jul 2006 10:13:00 +0800</pubDate><description><![CDATA[ 有个链表，长度未知，要随机（等概率）选取其中的item代码如下：int nmatch = 0;for ( p=list; p!=NULL; p=p->next ){    if ( rand() % ++nmatch == 0 ){        wanted = p;    }} wanted 即为所求item命题： 链表中的每个元素的选择概率为1/n，其中n=链表长度以n为归纳条]]></description><category></category></item><item><title><![CDATA[编程珠玑（2）]]></title><link>https://blog.youkuaiyun.com/ipiggg/article/details/816488</link><guid>https://blog.youkuaiyun.com/ipiggg/article/details/816488</guid><author>ipiggg</author><pubDate>Tue, 20 Jun 2006 17:30:00 +0800</pubDate><description><![CDATA[ 第3章总结的话：消除冗余代码这部分还不涉及设计模式，只是简单的缩减代码。难怪有人说程序员是“懒”出来的，能少写就要少写。第4章程序验证，这部分内容和《零缺陷程序设计》部分内容基本一样第5章略]]></description><category></category></item><item><title><![CDATA[编程珠玑（1）]]></title><link>https://blog.youkuaiyun.com/ipiggg/article/details/802934</link><guid>https://blog.youkuaiyun.com/ipiggg/article/details/802934</guid><author>ipiggg</author><pubDate>Fri, 16 Jun 2006 10:13:00 +0800</pubDate><description><![CDATA[ 这周借了本 “编程珠玑”，书不大，200多页，本以为能一周看完的，结果看完第1章就头大了。在此做点笔记，说不定找工作用得上。第1章，位图排序，一位代表一个数（如a[10]=1 表示数10存在）问题里面还有一个 选择问题，即n个数里随机取k个不同的数。开始看到题目的答案就蒙了，后来想想其实很简单。设数组为a[0]...a[n-1]1、j=n2、i=ran(0,j)     //0..j中随]]></description><category></category></item><item><title><![CDATA[设计模式]]></title><link>https://blog.youkuaiyun.com/ipiggg/article/details/729440</link><guid>https://blog.youkuaiyun.com/ipiggg/article/details/729440</guid><author>ipiggg</author><pubDate>Mon, 15 May 2006 13:44:00 +0800</pubDate><description><![CDATA[ 花了2周把 吕震宇 的 “设计模式” 系列 和 “设计模式随笔” 系列  以及 张逸 的 “设计之道”看了一下。他们的blog写得真好，我大概知道了GoF的所有模式，但实现起来估计还不习惯。GoF的总结：     Design to interfaces.     Find what varies and encapsulate it.     Favor composition o]]></description><category></category></item><item><title><![CDATA[编程修养]]></title><link>https://blog.youkuaiyun.com/ipiggg/article/details/705565</link><guid>https://blog.youkuaiyun.com/ipiggg/article/details/705565</guid><author>ipiggg</author><pubDate>Tue, 02 May 2006 16:07:00 +0800</pubDate><description><![CDATA[ 陈皓搞了32条，我找了些自己需要注意的，罗列在这里1、注释，包括版本和程序的。2、对于函数的输入、输出都需要检查，对系统调用的返回值也需要检查。简单一句话，不要相信任何东西，哪怕函数的输入是自己写的另一个函数的输出。3、将出错处理放前面。如内存分配，先写if (不成功）的部分。4、头文件的一般格式   #ifndef ....  #define.....    #endif5、 mall]]></description><category></category></item><item><title><![CDATA[PostgreSQL的Storage(2)-file 和 smgr]]></title><link>https://blog.youkuaiyun.com/ipiggg/article/details/677312</link><guid>https://blog.youkuaiyun.com/ipiggg/article/details/677312</guid><author>ipiggg</author><pubDate>Tue, 25 Apr 2006 20:38:00 +0800</pubDate><description><![CDATA[ smgr 做的很象一个接口，根据README的说明 只要下层实现相应的函数就能用smgr调用。现在的PostgreSQL中只剩md了。file包含两个文件，一个buffile，一个fd。fd可以说是最底层的了，函数都是直接调用open,close,read,write,lseek的。我开始还以为fd在smgr上层那。fd由于能打开的文件有限，用的是LRU的替换算法，实现得很简练。buff]]></description><category></category></item><item><title><![CDATA[Google的BigTable]]></title><link>https://blog.youkuaiyun.com/ipiggg/article/details/674079</link><guid>https://blog.youkuaiyun.com/ipiggg/article/details/674079</guid><author>ipiggg</author><pubDate>Sun, 23 Apr 2006 17:14:00 +0800</pubDate><description><![CDATA[ 今天看了一下Google BigTable 的ppt ( 2005-10-18: Jeff Dean gave a talk at the University of Washington about Big Table - their system for storing large amounts of data in a semi-structured manner)，感觉没什么新鲜的]]></description><category></category></item><item><title><![CDATA[PostgreSQL的Storage(1)-buffer]]></title><link>https://blog.youkuaiyun.com/ipiggg/article/details/672946</link><guid>https://blog.youkuaiyun.com/ipiggg/article/details/672946</guid><author>ipiggg</author><pubDate>Sat, 22 Apr 2006 13:01:00 +0800</pubDate><description><![CDATA[ 上星期开始了关于数据库的兴趣小组，书是 Database System--The Complete Book上星期讲的是硬件和文件组织形式本星期是索引，主要是B-Tree和Hash从今天开始，对照讲的东西，看看PostgreSQL的具体实现。PostgreSQL的关于storage的文件在src/backend/storage里，有buffer,file,page及相关的manage]]></description><category></category></item><item><title><![CDATA[PostgreSQL的R-tree和一些空间类型]]></title><link>https://blog.youkuaiyun.com/ipiggg/article/details/667918</link><guid>https://blog.youkuaiyun.com/ipiggg/article/details/667918</guid><author>ipiggg</author><pubDate>Tue, 18 Apr 2006 14:55:00 +0800</pubDate><description><![CDATA[ 昨天和同学试了一下PostgreSQL的R-treetable 就２列：id　int; mbr  box;其中在mbr上建了个r-tree索引。当有１０，０００个tuple的时候，试了２个包含操作（操作符：~）和一个相交操作，系统竟然都是用的顺序查找想想可能数据太少，于是又导入了３００，０００个tuple（由于在导入前已建索引，导入工作有点慢）例1：explain select * ]]></description><category></category></item><item><title><![CDATA[开始 关于PostgreSQL 的内容]]></title><link>https://blog.youkuaiyun.com/ipiggg/article/details/667397</link><guid>https://blog.youkuaiyun.com/ipiggg/article/details/667397</guid><author>ipiggg</author><pubDate>Tue, 18 Apr 2006 10:04:00 +0800</pubDate><description><![CDATA[PostgreSQL的代码看了一点，真正看懂的大概100行吧。看代码确实很累。昨天又回头看了PostgreSQL的一些ppt./timing  显示用时explain [SQL statement]  能看出用了什么索引，cost是多少analyze verbose [table name]  能看见table用了几页现在做项目，本周的任务是关于PostgreSQL的扩充方式，其实Po]]></description><category></category></item><item><title><![CDATA[关于little-endian 和 big-endian]]></title><link>https://blog.youkuaiyun.com/ipiggg/article/details/667023</link><guid>https://blog.youkuaiyun.com/ipiggg/article/details/667023</guid><author>ipiggg</author><pubDate>Mon, 17 Apr 2006 22:38:00 +0800</pubDate><description><![CDATA[#include using namespace std;int main(){  int i = 1;  char *a = (char*)&i;  for(int j=0;j  {    cout  }  return 0;} 1。char 1   int 42。需要强制类型转换 char *a = (char*)&i;3。读 int 的第 j 字节是用*(a+j)  ]]></description><category></category></item><item><title><![CDATA[I'm a pig!]]></title><link>https://blog.youkuaiyun.com/ipiggg/article/details/667006</link><guid>https://blog.youkuaiyun.com/ipiggg/article/details/667006</guid><author>ipiggg</author><pubDate>Mon, 17 Apr 2006 22:24:00 +0800</pubDate><description><![CDATA[  A real pig~! hengheng.]]></description><category></category></item></channel></rss>