摘要: 插入排序的基本操作是将当前无序序列区中的第一个元素插入到有序序列区,使有序序列区的长度增加1;为了防止循环变量出界,在循环结束的条件中加了( i >= 0 )的判别,若将这个用在插入算法中,,将会因为这个条件的判别增加排序时间。为此改写在有序表中进行插入的算法如下:利用 a[0] 复制待插入的记录,... 阅读全文
posted @ 2014-07-14 20:22 NYNU_ACM 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 该算法时间复杂度与输入的顺序有关,如果输入的是一组有序的数据,时间复杂度为O(n),如果是一组无序的数据,时间复杂度为O(n^2);空间复杂度为O(1);//冒泡排序#includeint main() { int a[] = {49,38,65,49,76,13,27,52}; //... 阅读全文
posted @ 2014-07-14 11:14 NYNU_ACM 阅读(110) 评论(0) 推荐(0) 编辑
摘要: 该算法时间复杂度为O(n^2),空间复杂度为O(1) ;//选择排序(前部为有序序列,后部为无序序列)#includeint main() { int a[] = {49,38,65,49,76,13,27,52} ; int i , j , k ; for(i = 0 ; i ... 阅读全文
posted @ 2014-07-14 10:39 NYNU_ACM 阅读(129) 评论(0) 推荐(0) 编辑
摘要: 将线性表以带头结点的单链表作存储结构,偶数放前,奇数放后;代码如下:#includetypedef struct LNode { int data ; struct LNode *next ;}LNode , *LinkList ;int main() { LinkList... 阅读全文
posted @ 2014-07-14 08:32 NYNU_ACM 阅读(108) 评论(0) 推荐(0) 编辑