Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private void ordenar (int izq, int der)
- {
- Random r = new Random();
- int i = izq, j = der, y, x = 0;
- int p1 = (int)(r.nextInt(der-izq+1)+izq);
- int p2 = (int)(r.nextInt(der-izq+1)+izq);
- int p3 = (int)(r.nextInt(der-izq+1)+izq);
- if(v[p1] < v[p2] && v[p1] > v[p3]) x = v[p1];
- else if(v[p1] < v[p3] && v[p1] > v[p2]) x = v[p1];
- else if(v[p1] == v[p2] && v[p1] > v[p3]) x = v[p1];
- else if(v[p1] == v[p2] && v[p1] < v[p3]) x = v[p1];
- else if(v[p1] == v[p3] && v[p1] > v[p2]) x = v[p1];
- else if(v[p1] == v[p3] && v[p1] < v[p2]) x = v[p1];
- else if(v[p2] < v[p1] && v[p2] > v[p3]) x = v[p2];
- else if(v[p2] < v[p3] && v[p2] > v[p1]) x = v[p2];
- else if(v[p2] == v[p1] && v[p2] > v[p3]) x = v[p2];
- else if(v[p2] == v[p1] && v[p2] < v[p3]) x = v[p2];
- else if(v[p2] == v[p3] && v[p2] > v[p1]) x = v[p2];
- else if(v[p2] == v[p3] && v[p2] < v[p1]) x = v[p2];
- else if(v[p3] < v[p1] && v[p3] > v[p2]) x = v[p3];
- else if(v[p3] < v[p2] && v[p3] > v[p1]) x = v[p3];
- else if(v[p3] == v[p2] && v[p3] > v[p1]) x = v[p3];
- else if(v[p3] == v[p2] && v[p3] < v[p1]) x = v[p3];
- else if(v[p3] == v[p1] && v[p3] > v[p2]) x = v[p3];
- else if(v[p3] == v[p1] && v[p3] < v[p2]) x = v[p3];
- else if (v[p1] == v[p2] && v[p1] == v[p3]) x = v[p1];
- do
- {
- while( v[i] < x && i < der ) i++;
- while( x < v[j] && j > izq ) j--;
- if( i <= j )
- {
- y = v[i];
- v[i] = v[j];
- v[j] = y;
- i++;
- j--;
- }
- }
- while( i <= j );
- if( izq < j ) ordenar( izq, j );
- if( i < der ) ordenar( i, der );
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement