《The C Programming Language》中快排的错误程序如下://Qsort.c by Tydus.#include int arr[] = {14,10,11,5,6,15,0,15,16,14,0,8,17,15,7,19,17,1,18,7};/* swap函数:交换v[k]与v[j]的值 */inline void swap(int v[],int k,int j){int temp;te
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/02 02:42:33
![《The C Programming Language》中快排的错误程序如下://Qsort.c by Tydus.#include int arr[] = {14,10,11,5,6,15,0,15,16,14,0,8,17,15,7,19,17,1,18,7};/* swap函数:交换v[k]与v[j]的值 */inline void swap(int v[],int k,int j){int temp;te](/uploads/image/z/14722375-31-5.jpg?t=%E3%80%8AThe+C+Programming+Language%E3%80%8B%E4%B8%AD%E5%BF%AB%E6%8E%92%E7%9A%84%E9%94%99%E8%AF%AF%E7%A8%8B%E5%BA%8F%E5%A6%82%E4%B8%8B%EF%BC%9A%2F%2FQsort.c+by+Tydus.%23include+int+arr%5B%5D+%3D+%7B14%2C10%2C11%2C5%2C6%2C15%2C0%2C15%2C16%2C14%2C0%2C8%2C17%2C15%2C7%2C19%2C17%2C1%2C18%2C7%7D%3B%2F%2A+swap%E5%87%BD%E6%95%B0%EF%BC%9A%E4%BA%A4%E6%8D%A2v%5Bk%5D%E4%B8%8Ev%5Bj%5D%E7%9A%84%E5%80%BC+%2A%2Finline+void+swap%28int+v%5B%5D%2Cint+k%2Cint+j%29%7Bint+temp%3Bte)
《The C Programming Language》中快排的错误程序如下://Qsort.c by Tydus.#include int arr[] = {14,10,11,5,6,15,0,15,16,14,0,8,17,15,7,19,17,1,18,7};/* swap函数:交换v[k]与v[j]的值 */inline void swap(int v[],int k,int j){int temp;te
《The C Programming Language》中快排的错误
程序如下:
//Qsort.c by Tydus.
#include
int arr[] = {14,10,11,5,6,15,0,15,16,14,0,8,17,15,7,19,17,1,18,7};
/* swap函数:交换v[k]与v[j]的值 */
inline void swap(int v[],int k,int j)
{
int temp;
temp = v[k];
v[k] = v[j];
v[j] = temp;
}
void qsort(int v[],int left,int right)
{
int j,last;
if (left >= right) /* 若数组包含的元素个数少于两个 */
return; /* 则不执行任何操作 */
swap(v,left,(left + right)/2); /* 将划分子集的元素移动到V[0] */
last=left; /* 用last记录中比关键字小间的最右位置*/
for (j = left+1; j
《The C Programming Language》中快排的错误程序如下://Qsort.c by Tydus.#include int arr[] = {14,10,11,5,6,15,0,15,16,14,0,8,17,15,7,19,17,1,18,7};/* swap函数:交换v[k]与v[j]的值 */inline void swap(int v[],int k,int j){int temp;te
给:
#include
int a[10]={4,7,2,9,1,3,8,5,0,6};
int partition(int p,int r)
{
int t,i,j,x;
i=p,j=r+1,x=a[p];
while(1)
{
while(a[++i]x);
if(i>=j)break;
t=a[i];
a[i]=a[j];
a[j]=t;
}
a[p]=a[j];
a[j]=x;
return j;
}
void qSort(int p,int r)
{
int q;
if(p