300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > 归并排序C语言实现方法详解 – 网络

归并排序C语言实现方法详解 – 网络

时间:2020-04-02 16:41:48

相关推荐

归并排序C语言实现方法详解 – 网络

1.定义一个归并排序函数,该函数接收三个参数待排序数组、子数组的起始下标以及子数组的结束下标。

2.如果子数组的起始下标等于结束下标,则该子数组已经有序,直接返回。

3.计算子数组的中间下标,然后递归地对左右两个子数组进行排序。

4.将左右两个已经排序好的子数组合并成一个有序的数组。

ergetttd) {d) {;

}tidd) / 2;ergeid);ergeidd);t left = start;tid + 1;tpd – start + 1];t i = 0;idd) {

if (arr[left]<= arr[right]) {p[i++] = arr[left++];

}

else {p[i++] = arr[right++];

}

}id) {p[i++] = arr[left++];

}d) {p[i++] = arr[right++];

}t j = 0; j< i; j++) {p[j];

}

tain() {t arr[] = { 9, 2, 7, 4, 5, 6, 3, 8, 1 };t = sizeof(arr) / sizeof(arr[0]);erge – 1);t; i++) {tf(“%d “, arr[i]);

} 0;

1 2 3 4 5 6 7 8 9

logn),适用于各种数据规模的排序。在实际应用中,归并排序还可以用于外部排序,即将待排序的数据存储在外部存储器中进行排序。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。