クイックソートのプログラムをC言語で作ってもらいたいのですがどなたか時間のある方お願いします。
なぜ作ってもらいたいのかという理由を簡潔に述べよ
このまま提出すれば単位もらえるよ
void QuickSort(int *array)
{
int i, temp, count;
do {
count = 0;
for (i=0; i<10; i++){
if (array[i] > array[i+1]){
temp = array[i];
array[i] = array[i+1];
array[i+1] = temp;
++count;
}
}
} while(count != 0);
return;
}
たはー
>>9 ワロタ、ここは漏れもひとつ
void とりあえず
>>1氏ね(objType *A, int L, int R)
{
if (R > L) {
objType a = A[R];
objType t = 0;
int l = (L-1);
int r = R;
while(1) {
while(a[++l] < a);
while(a[--r] > a);
if ( l >= r ) break;
t=A[l]; A[l]=A[r]; A[r]=t;
}
t=A[l]; A[l]=A[r]; A[r]=t;
とりあえず
>>1は氏ね(a, l, (l-1));
とりあえず
>>1は氏ね(a, (l+1), r);
}
}
ぶくぶく〜
jdream.co.jpっておよそクイックソートとは関係のなさそうな会社なんだけど、
>>1は何者なんだろう。
>>15 だから今後クイックソート業界に参入するつもりなんだろう。
(´-`).。oO(何を縫うんだろう。。?)
そういうときは、archive.orgからごっそりもってきて、
ミラーつくるべし。
void EndlessSort(int *array)
{
int i, temp, count;
do {
count = 0;
for (i=0; i<10; i++){
if (array[i] > array[i+1]){
temp = array[i];
array[i] = array[i+1];
array[i+1] = temp;
++count;
}
}
} while(count != 0);
return;
}
Walkü:re
24 :
デフォルトの名無しさん:02/09/25 23:01
あげ
int test(int *array, int count){
int i;
for (i = 1; i < count; i++)
if (array[i - 1] > array[i])
return 0;
return 1;
}
void quicksort(int *array, int count){
while (!test(array, count)) {
int x = rand() % count;
int y = rand() % count;
int t = array[x];
array[x] = array[y];
array[y] = t;
}
}
おっ、凄いコードだよな。俺のマシン(i486)だと1000のソートで
8秒だぜ。はえーな。
スタッフの写真ワロタw
void quicksort (int *a, int ac) {
for (;;) {
int i;
for (i = 1; i < ac; i++) {
if (a[i - 1] > a[i]) break;
}
if (i == ac) break;
for (i = ac; 0 < --i;) {
int r = rand () / (RAND_MAX / ac + 1);
int tmp = a[r];
a[r] = a[i];
a[i] = tmp;
}
}
}
>31
for(;;)を使っている時点で駄目。
素直にwhile(1)を使ったほうが速い。
Staffの女性の写真にワロタ
グラビアかよ!!
あ、これ酒屋か……なーんだ。びっくりした従業員なのね。
>>31 クイックソートとしては最速かもしれんが、
途中でヒープソートに切り替えたほうが早いぞ。
('-`).。oO(何を縫うんだろう。。?)
>>32 >>37 ちょっと待て。
最適化されない場合、while(1) より for(;;) の方が速いはずだが。
まあ、気にするほどの差は無いが。
ぶくぶく〜
↑ mailto:eeeddd
42 :
デフォルトの名無しさん:02/11/21 23:33
LINUX,WINDOWSのクロスプラットホームなビールスを作ってくだちい。
ビールスってヴァイラスのこと?
44 :
デフォルトの名無しさん:02/11/21 23:37
えっ。for(;;)とwhile(1)ってなんか違うの?なわきゃないっしょ。
google cross platform