摘要: 这篇主要记录一下排序方法,并侧重介绍排序的思路,具体程序笔试前练习一下。 常见的排序方法有:冒泡排序,选择排序,插入排序,归并排序和快速排序。冒泡排序思路:依次比较相邻的两个数,将小数放前,大数放后。第一趟就会将最大数放到最后,第二趟会将第二大数放在倒数第二的位置,依此类推,实现有序化。选择排序思路:每一趟从待排序的数据元素中选出最小(或最大)的一个元素,顺序放在已排好的数列的最后,直到全部待排序的数据元素排完,选择排序是不稳定的排序方法。插入排序思路:将无序数列通过二分法插入到有序数列中,从有序数列最后一个开始比较,直到比较到大于等于前面一个元素,小于后面一个元素的位置并插入,使N有序数列. 阅读全文
posted @ 2012-10-08 14:37 Second Life 阅读(251) 评论(0) 推荐(0) 编辑
摘要: void* p = malloc(100); sizeof(p) = 4;指针的字节数,并非指向内容的大小。void Func(char str[100]) sizeof(str) = 4;数组作为函数的参数进行传递时,该数组自动退化成同类型的指针。void GetMemory(char* p, int num) {p = (char*)malloc(sizeof(char)*num);} void Test(void) {char* str = NULL; GetMemory(str,100); strcpy(str,"hello");} 错误出现在GetMemory函数 阅读全文
posted @ 2012-10-08 11:13 Second Life 阅读(322) 评论(0) 推荐(0) 编辑