首页 > 编程语言 > 详细

直接选择排序与冒泡排序

时间:2019-06-14 23:04:26      阅读:145      评论:0      收藏:0      [点我收藏+]

#include <stdlib.h> //包含内存分配函数 malloc 的声明

#include "sort.h"

//直接插入排序变形算法(非适应性,与a[i]、a[i-1]之间的比较结果无关)

void insertion (Item a[], int l, int r) { //l, r 分别是待排序区间的下标下界和上界

int i,j;

       for (i=l+1; i<=r; i++)

              for (j=i; j>l; j--)

                     compexch(a[j-1], a[j]);

}

//直接选择排序

void selection (Item a[], int l, int r ) {

int i, j, min;

       for (i=l; i<r; i++) {

              min = i;

              for (j = i+1; j <=r ; j++) 

                     if ( less(a[j], a[min]) ) min=j;       

              exch(a[i], a[min]);

       }

}

//冒泡排序

void bubble(Item a[], int l, int r) {

int i,j;

       for (i=l; i<r; i++) {

              for (j=r; j>i; j--)

                     compexch(a[j-1], a[j]);

       }

}

直接选择排序与冒泡排序

原文:https://www.cnblogs.com/huqian477/p/huqian3.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!