C语言实现快速排序算法

#include <stdio.h>

void swap(int* a, int* b) {

int t = *a;

*a = *b;

*b = t;

}

int partition (int arr\[\], int low, int high) {

int pivot = arrhigh;

int i = (low - 1);

for (int j = low; j <= high - 1; j++) {

if (arrj < pivot) {

i++;

swap(&arri, &arrj);

}

}

swap(&arri + 1, &arrhigh);

return (i + 1);

}

void quickSort(int arr\[\], int low, int high) {

if (low < high) {

int pi = partition(arr, low, high);

quickSort(arr, low, pi - 1);

quickSort(arr, pi + 1, high);

}

}

void printArray(int arr\[\], int size) {

for (int i = 0; i < size; i++)

printf("%d ", arri);

printf("\n");

}

int main() {

int arr\[\] = {10, 7, 8, 9, 1, 5};

int n = sizeof(arr)/sizeof(arr0);

quickSort(arr, 0, n-1);

printf("Sorted array: \n");

printArray(arr, n);

return 0;

}

相关推荐
玖玥拾9 分钟前
LeetCode 205 同构字符串
算法·leetcode
影视飓风TIM13 分钟前
C++哈希表:unordered_set / unordered_map底层原理
c++·算法·哈希算法·散列表
在所不辞兄15 分钟前
【零基础学智能仿真-06】决策树——让模型自动发现力学失效阈值
算法·决策树·机器学习
是隼人18 分钟前
buuctf-pwn ciscn_2019_n_5题解(学习过程持续 更新)
c语言·学习·安全·pwn入门·ctf入门
啥都想学点的研究生31 分钟前
一篇文章讲清楚:C4.5决策树和CART决策树
算法·决策树·机器学习
DDXYcoder32 分钟前
万字解析动态内存从编译到运行
java·前端·算法
阳明山水36 分钟前
概念漂移分类与自适应策略解析
人工智能·深度学习·算法·机器学习·架构
欧特克_Glodon1 小时前
OpenCV计算机视觉开发入门与实践<二十九>:grabCut算法分割图像
opencv·算法·计算机视觉·图像分割·grabcut 算法
方方洛1 小时前
vllm教程-02-核心原理
人工智能·算法·vllm
OPEN-F2 小时前
C++并发编程:异步任务与线程池实战
开发语言·c++·算法