随笔分类 -  算法

摘要:public class 冒泡排序 { public void sort(int[] a) { boolean flag = true; for(int i = 0; i = i; j--) { if(a[j - 1] > a[j]) { int temp = a[j]; ... 阅读全文
posted @ 2016-10-31 20:22 没有梦想的小灰灰 阅读(92) 评论(0) 推荐(0)
摘要:public class 堆排序 { void HeapSort(int[] arr) { for(int i = arr.length / 2; i >= 0; i--) { HeapAdjust(arr, i, arr.length - 1); } for(int i = arr.length - 1; i > ... 阅读全文
posted @ 2016-10-31 20:10 没有梦想的小灰灰 阅读(105) 评论(0) 推荐(0)
摘要:#include #include static void swap(char* pchar1, char* pchar2) { //交换数组的两个数 char tmp = *pchar1; *pchar1 = *pchar2; *pchar2 = tmp; } void permutation(char* pchar, int begin, int len... 阅读全文
posted @ 2016-03-19 10:40 没有梦想的小灰灰 阅读(160) 评论(0) 推荐(0)
摘要:题目:实现一个函数,把字符串中的每个空格替换成%20。例如,输入“We are happy.”,输出”We%20are%20happy.“。要求在原有的字符串中进行替换,不得使用额外的空间,原有字符串空间保证足够大。 直接从前往后地做替换,会导致一些字符移动多次。转换思路,从后往前做替换,这样每个字 阅读全文
posted @ 2016-03-17 20:17 没有梦想的小灰灰 阅读(163) 评论(0) 推荐(0)
摘要:题目:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 15 最容易想到的办法是遍历整个二维数组,这样的时间复杂度是O(n),不是最优的办法。因为这个二维数组是有特点的,应该要利用这 阅读全文
posted @ 2016-03-16 21:15 没有梦想的小灰灰 阅读(146) 评论(0) 推荐(0)