06 2012 档案

摘要:由于接收消息必须要有hwnd,也就是需要有个窗口对应才能接收消息,但有些情况下不需要这个窗口却又想要能够接收消息,找了下,大概有这么些办法:1、在一个BCB版块看到有个人提问在dll中不用窗口怎么接收消息的一个回答:自定义一个窗口句柄: 申请:AllocateHWnd 释放:DeallocateHWnd 就可以接受和发送消息啦2、建立一个普通的隐藏窗口,只用于处理消息,不干其它事情3、建立一个“消息窗口(Message-Only窗口)”,这种窗口仅仅用于处理消息,而不能被显示出来。在创建时指定CreateWindowEx的参数hwndParent为HWND_MESSAGE.或在创建窗口后S.. 阅读全文
posted @ 2012-06-15 12:38 Mingxx 阅读(299) 评论(0) 推荐(0)
摘要:堆排序#!/usr/bin/pythonimport sysdef left_child(node): return node * 2 + 1def right_child(node): return node * 2 + 2def parent(node): if (node % 2): return (i - 1) / 2 else: return (i - 2) / 2def max_heapify(array, i, heap_size): l = left_child(i) r = right_child(i) l... 阅读全文
posted @ 2012-06-05 18:35 Mingxx 阅读(291) 评论(0) 推荐(0)
摘要:理论不多说:#!/usr/bin/pythonimport sysdef merge(array, q, p, r): left_array = array[q:p+1] right_array = array[p+1:r+1] left_array_num = len(left_array) right_array_num = len(right_array) i, j , k= [0, 0, q] while i < left_array_num and j < right_array_num: if (left_array[i] < ri... 阅读全文
posted @ 2012-06-05 18:33 Mingxx 阅读(346) 评论(0) 推荐(0)
摘要:学习一门计算机语言是好是写写代码。算法插入算法实现:#!/usr/bin/pythondef insert_sort(array): for i in range(1, len(array)): key = array[i] j = i - 1 while j >= 0 and key < array[j]: array[j + 1] = array[j] j-=1 array[j + 1] = key if __name__ == "__main__": ... 阅读全文
posted @ 2012-06-05 18:31 Mingxx 阅读(241) 评论(0) 推荐(0)
摘要:主要分为两个子算法,PARTITION(A, p, r)以A[r]为基准对数组进行一个划分,比A[r]小的放在左边,比A[r]大的放在右边。QUICKSORT(A, p, r)是快速排序的子程序,调用划分程序对数组进行划分,然后递归地调用QUICKSORT(A, p, r),以完成快速排序的过程。快速排序的最差时间复杂度为O(n2),平时时间复杂度为O(nlgn)。最差时间复杂度的情况为数组基本有序的时候,平均时间复杂度为数组的数值分布较为平均的时候。在平时情况下快速排序跟堆排序的时间复杂度都为O(nlgn),但是快速排序的常数项较小,所以要优于堆排序。PARTITION(A, p, r).. 阅读全文
posted @ 2012-06-05 18:27 Mingxx 阅读(2727) 评论(0) 推荐(1)