
数据结构与算法
storm_zy
follow your dream.
展开
-
排序算法之——归并排序 C语言实现
一 、归并排序的思路: 归并排序采用的是分治的思想,就是将数组进行分隔,直到最小的单位(两个元素),然后对最小的单位进行排序。 最后将排好序的单位依次遍历到数组中。 1 将数组进行分隔,直到不能再分的最小单位(两个元素)。 2 将最小单位排序 3 将最小单位遍历到数组中 二、代码 #include <stdio.h> void merge_part(int arr[], int l, int m, int r) { // 此处应该用 malloc int tmp[256] = { 0 }原创 2020-12-20 19:11:58 · 1451 阅读 · 0 评论 -
排序算法之——快速排序 C语言实现
快速排序的思路: 1 从源数组里面选择一个数 v 作为对比 2 i 从左边开始遍历,直到找到一个比 v 大的数 3 j 从右边开始遍历,直到找到一个比 v 小的数,或者遍历到最左边跳出循环 4 交换两个位置 i 和 j 的数,回到步骤2 5 交换 位置 i 和 v 的数 代码: #include <stdio.h> void swap(int * a, int *b) { int tmp = *a; *a = *b; *b = tmp; } int partition(int a[],原创 2020-11-06 09:24:42 · 408 阅读 · 0 评论