博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2011年11月2日

摘要: 在最早学C语言的时候,char *与char []是最让我头疼的几个问题之一。字符串数组和字符串指针是截然不同的两个东西,如果不去在意它们之间的不同,而混合使用,可能会带来很多麻烦。让我们从这两个东西创建的过程说起。当我们进行字符串数组的定义时char str[] = "abc";其实我们做了两件事:1. 创建了一个新的字符串。2. 创建了一个名叫“str”的变量保存字符串的首地址。而当我们进行字符串指针的定义时char* str = "abc";我们只是定义了一个指针指向字符串“abc”的首地址。等等,难道我们不需要创建字符串"abc&quo 阅读全文

posted @ 2011-11-02 10:45 Billowen 阅读(3682) 评论(0) 推荐(0)

2011年10月9日

摘要: 最近在看《算法导论》,同时又在学习Python,所以想到用PYTHON实现看过的算法,来练手。PYTHON帮忙看看有没有需要改进的写法。刚接触PYTHON,可能代码写得不够优美。def quick_sort(A, left, right): if right > left: # choose the left item as pivot pivotIndex = left pivotNewIndex = partition(A, left, right, pivotIndex) quick_sort(A, left, pivotNe... 阅读全文

posted @ 2011-10-09 15:30 Billowen 阅读(228) 评论(0) 推荐(0)

摘要: 最近在看《算法导论》,同时又在学习Python,所以想到用PYTHON实现看过的算法,来练手。PYTHON帮忙看看有没有需要改进的写法# Suppose the index of current item is i,# then the parent index is int( (i-1)/2 ),# the left child index is 2*i+1,# the right child index is 2*i+2heap_size = int()def heapsort(A): global heap_size heap_size = 0 build_max_he... 阅读全文

posted @ 2011-10-09 15:29 Billowen 阅读(255) 评论(0) 推荐(0)

2010年11月2日

摘要: 双缓存技术在现在的GUI设计中应用很广,很多GUI套件都支持双缓存技术,如QT。 最早了解到双缓存技术是当初在思考如何绘制橡皮筋选择框。由于在鼠标拖动时,橡皮筋选择框要进行不断的重绘,刚开始想到一个比较搓的方法是:记下当前橡皮筋选择框上的像素颜色,然后在画上选择框,当鼠标拖动时,擦除原来的橡皮筋选择框,填上原来的像素颜色,然后重新绘制。很绕啊,总感觉逻辑不过简洁,同时实现起来也是有点麻烦的。 双缓... 阅读全文

posted @ 2010-11-02 10:04 Billowen 阅读(593) 评论(2) 推荐(0)

2010年10月28日

摘要: 对于程序员来说,良好的逻辑与组织能力是非常重要的。  当拿到一个设计需求时,我们需要很好的分析出其中的关键点,并将这一需求合理得分成多个模块。有时在设计类时,觉得这就跟说话一样,首先你要知道自己在讲什么,一条一条在心理列好,然后你想让听众理解什么,就需要将这些点慢慢展开。通常这些非常不容易,大部分数的人在说话时都很难做到这点,洋洋洒洒讲了一通,很可能对面的人只抓住了一些细枝末节。这就是组织能力上的... 阅读全文

posted @ 2010-10-28 16:30 Billowen 阅读(138) 评论(0) 推荐(0)