以下是最近学习各种算法的代码实现:#include #include #include #include typedef int EleType;typedef int (*CompFunc)(void *,void *);int IntComp(void * a,void *b){ if(*...
分类:
其他好文 时间:
2014-07-08 00:15:54
阅读次数:
293
从题目看,首先不是全部是若干。排序算法很多,我个人的能力也有限,不可能都讲到。另外,是简单汇总,是希望能用最简单的代码,最简短的语言说明问题,不搞太多理论分析。就像前面说的,排序算法有很多,而且不存在哪一种最不好,哪一种最好这样的说法。根据用途不同选择最适合的就行了。不过仅从时间复杂度来看,基本上有两种,一种是O(n^2), 一种是O(nlogn)。...
分类:
其他好文 时间:
2014-06-30 20:01:09
阅读次数:
191
主要思想:依次比较相邻连个数,如果后面的(数组[j])数大于前面的(数组[j-1]),则将两个数交换位置 1.最简单实现:采用双重循环,外层进行控制,内层进行比较 第一次比较第0个元素一直到第n-1个元素(比较完成后最后一个元素肯定为最大的),第二次只需比较第0个元素到第n-2个元素 public ...
分类:
其他好文 时间:
2014-06-27 20:51:06
阅读次数:
203
1 int[] nums={1,3,5,7,9,2,4,6,8};//定义数组 2 int temp=0;// 定义临时变量 3 for(int i=0;inums[j+1])//如果前面一个数字大于后面一个数字,就交换大小 8 { 9 temp=nums[j];10 ...
分类:
其他好文 时间:
2014-06-27 13:27:29
阅读次数:
144
昨日写完冒泡排序,和大多数人的感觉一样,太简单,丝毫没有挑战性。但楼主是一个追求踏实平稳的人,希望地基坚固,也为方便后面学习和研究更加高深的算法。但在研究效率上还有待提高,楼主一定好好努力。今天将会写完选择排序 和 插入排序,本文主在选择排序。一. 算法描写叙述 选择排序:比方在一个长度为N的...
分类:
其他好文 时间:
2014-06-26 20:24:48
阅读次数:
161
Google 2006年的一道笔试题,难度系数低题目描写叙述:在一个字符串中找到第一个仅仅出现一次的字符。如输入abaccdeff,则输出b。逻辑分析:1、简单粗暴O(n^2),一个显而易见的想法是像冒泡排序一样,採用两个循环,内层循环对外层判定元素arr[i]进行轮询,当发现arr[i] == a...
分类:
其他好文 时间:
2014-06-26 19:38:26
阅读次数:
193
冒泡排序(Bubble
Sort,台湾译为:泡沫排序或气泡排序)是一种简单的排序算法。
它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。
算法原理:
比较相邻的元素。如果第一个比第二个大,就...
分类:
其他好文 时间:
2014-06-25 00:17:22
阅读次数:
250
说到冒泡排序,大一的时候第一次学习这个排序算法,可能大家不知道,“冒泡”在我说的方言里面是吹牛逼的意思。所以就觉得这个排序算法特吹牛逼有木有。
相信大家对所有的排序算法,这个想必是最熟悉的。大学老师多次强调,去培训,讲师也会提到,这个在面试经常被问到,所以我建议大家最好把这个算法背下来,做到心中有冒泡,手上写出来 哈哈。
好了,言归正传。...
分类:
编程语言 时间:
2014-06-24 23:26:45
阅读次数:
305
基本讲解了排序算法的基础知识,并按照不同的分类从理论上进行了划分,主要实现了冒泡排序和快速排序,并进行了代码实现,希望能够起到简单明了的作用。...
分类:
其他好文 时间:
2014-06-24 21:50:15
阅读次数:
179
排序算法有不少,当然,一般的语言中都提供某个排序函数,比如Python中,对list进行排序,可以使用sorted(或者list.sort()),关于这方面的使用,在我的github代码库algorithm中有几个举例,有兴趣的看官可以去那里看看(顺便告知,我在Github中的账号是qiwsir,欢迎follow me)。但是,在某些情况下,语言中提供的排序方法或许不适合,必须选择某种排序算法。
...
分类:
其他好文 时间:
2014-06-24 18:33:33
阅读次数:
205