//
// sort_.cpp
// Sort
//
// Created by ljpc on 2018/4/20.
// Copyright © 2018年 ljpc. All rights reserved.
//
#include “sort_.h”
void print_array(int *arr, int n)
// 打印数组
{
if(n==0){
printf(“ERROR: Array length is ZERO\n”);
return;
}
printf("%d", arr[0]);
for (int i=1; i<n; i++) {
printf(" %d", arr[i]);
}
printf("\n");
}
int partition_array(int arr ,int l,int r)
// 编程实现arr[l, r]分区:选定一个基准,左边比基准小,右边比基准大
// 返回基准所处位置
{
// 请在这里补充代码,完成本关任务
/********* Begin *********/
// 基准数据
int tmp = arr[l];
while (l < r) {
// 当队尾的元素大于等于基准数据时,向前挪动high指针
while (l < r && arr[r] >= tmp) {
r--;
}
// 如果队尾元素小于tmp了,需要将其赋值给low
arr[l] = arr[r];
// 当队首元素小于等于tmp时,向前挪动low指针
whil