快速排序 c++ while(low=pivotkey) --high; 实现的是什么功能?# include "stdio.h"# include "time.h"# include "stdlib.h"# define N 10int partition(int a[],int low,int high){//快速排序中的一趟int pivotkey;//作为枢轴来使用pivotkey
来源:学生作业帮助网 编辑:作业帮 时间:2024/09/01 21:54:50
![快速排序 c++ while(low=pivotkey) --high; 实现的是什么功能?# include](/uploads/image/z/11049146-26-6.jpg?t=%E5%BF%AB%E9%80%9F%E6%8E%92%E5%BA%8F+c%2B%2B+while%28low%3Dpivotkey%29+--high%3B+%E5%AE%9E%E7%8E%B0%E7%9A%84%E6%98%AF%E4%BB%80%E4%B9%88%E5%8A%9F%E8%83%BD%3F%23+include+%22stdio.h%22%23+include+%22time.h%22%23+include+%22stdlib.h%22%23+define+N+10int+partition%28int+a%5B%5D%2Cint+low%2Cint+high%29%7B%2F%2F%E5%BF%AB%E9%80%9F%E6%8E%92%E5%BA%8F%E4%B8%AD%E7%9A%84%E4%B8%80%E8%B6%9Fint+pivotkey%3B%2F%2F%E4%BD%9C%E4%B8%BA%E6%9E%A2%E8%BD%B4%E6%9D%A5%E4%BD%BF%E7%94%A8pivotkey)
快速排序 c++ while(low=pivotkey) --high; 实现的是什么功能?# include "stdio.h"# include "time.h"# include "stdlib.h"# define N 10int partition(int a[],int low,int high){//快速排序中的一趟int pivotkey;//作为枢轴来使用pivotkey
快速排序 c++ while(low=pivotkey) --high; 实现的是什么功能?
# include "stdio.h"
# include "time.h"
# include "stdlib.h"
# define N 10
int partition(int a[],int low,int high){//快速排序中的一趟
int pivotkey;//作为枢轴来使用
pivotkey=a[low];
while(low
快速排序 c++ while(low=pivotkey) --high; 实现的是什么功能?# include "stdio.h"# include "time.h"# include "stdlib.h"# define N 10int partition(int a[],int low,int high){//快速排序中的一趟int pivotkey;//作为枢轴来使用pivotkey
哎,都没有分,都没动力给你答了!快速排序的做法:定义两个指针low和high,初值为low和high,设枢轴记录的关键字为pivotkey,则首先从high所指的位置起向前搜索找到第一个关键字小于pivotkey的记录和枢轴相互交换,然后从low所指的位置起向后搜索,找到第一个关键字大于pivotkey的记录和枢轴记录,相互交换,重复这两步,直到low=high为止.
while(low=pivotkey) --high; 的意思就是判断low=pivotkey的值,则指针high减1,即是指针high向低端移动一位,a[low]=a[high]的意思是:将比枢轴记录小交换到低端.(因为初始 pivotkey=a[low])
懂了不?