Advertisement
Guest User

Untitled

a guest
Apr 30th, 2017
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.11 KB | None | 0 0
  1. void selection2Sort(int *A, int n, char smjer) {
  2. int i, j, min, max;
  3. if (smjer == '0') {
  4. for (i = 0; i < n/2 ; i++) {
  5. min = i;
  6. max = n - 1-i;
  7. for (j = i + 1; j < n - 1-i; j++) {
  8. if (A[min] > A[j]) min = j;
  9. if (A[max] < A[j]) max = j;
  10. }
  11. if (A[max] < A[i]) {
  12. zamijeni(&A[i], &A[n-i-1]);
  13. zamijeni(&A[i], &A[min]);
  14. }
  15. else {
  16. if (A[min] > A[n - 1 - i]) {
  17. zamijeni(&A[n - 1 - i], &A[i]);
  18. zamijeni(&A[n - 1 - i], &A[max]);
  19. }
  20. else {
  21. zamijeni(&A[min], &A[i]);
  22. zamijeni(&A[max], &A[n - 1 - i]);
  23. }
  24. }
  25. }
  26. }
  27. if (smjer == '1') {
  28. for (i = 0; i < n / 2; i++) {
  29. max = i;
  30. min = n - 1 - i;
  31. for (j = i + 1; j < n - 1 - i; j++) {
  32. if (A[min] > A[j]) min = j;
  33. if (A[max] < A[j]) max = j;
  34. }
  35. if (A[max] < A[n - 1 - i]) {
  36. zamijeni(&A[n - 1 - i], &A[i]);
  37. zamijeni(&A[n - 1 - i], &A[min]);
  38. }
  39. else {
  40. if (A[min] > A[i]) {
  41. zamijeni(&A[i], &A[n - 1 - i]);
  42. zamijeni(&A[i], &A[max]);
  43. }
  44. else {
  45. zamijeni(&A[min], &A[n - 1 - i]);
  46. zamijeni(&A[max], &A[i]);
  47. }
  48. }
  49. }
  50. }
  51. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement