【ISO/ANSI/JIS】 C言語なら俺に聞け! Part 132at TECH
【ISO/ANSI/JIS】 C言語なら俺に聞け! Part 132 - 暇つぶし2ch495:デフォルトの名無しさん
07/11/30 20:01:15
9,6,4,7,12,14,1,11,10,15,3,5,8,13,2を小さいものから順に並び替える関数です。

0 #include<stdio.h>
1 void quicksort(int x[],int n){
2 int m;
3 int *pa=x+2. *pz=x+n
4 if(n==2){
5 if(x[1]>x[2])m=x[1],x[1]x[2],x[2]=m;
6 return;
7 }
8 while(pa<pz){
9 while(pa<=x+n && *pa<x[1])pa++;
10 while(pz>=x+2 && *pz>=x[1])pz--;
11 if(pa<pz)m=*pa, *pa++=*pz, *pz--=m;
12 }
13 if(pa>x+2)m=x[1],x[1]=*(--pa),:pa=m;
14 if(pa-x>2)quicksort(x,pa-1-x);
15 if(x+n-pz>1)quicksort(pz.x+n-pz);
16 }

これの8~12行目の部分は、9行目で前から数列の6,4,7,12まで進み、
10行目で後ろから2まで進み、12と2を交換するという意味であってますか?






次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch