알고리즘

최소값 찾기

생각 나무 2020. 3. 30. 11:23

1. 하나씩 비교하는 방법

FindMinimum{A[], n){

  min = A[0];

  for (i=1; i<n;i++)

    if(A[i]<min) min = A[i];

  return min;

}

 

2. 최소/최대 모두 찾기

FindMinMax(A[], n, min, max) {

  if(A[0]<A[1]){  min= A[0];   max=A[1];  }

  esle{ min = A[1]; max = A[0]; }

  for(i=2; i<n; i += 2) {

    if{A[i]<A[i+1]) { small = A[i]; large = A[i+1];}

    else{small = A[i+1]; large = A[i]; }

    if(small < in) min = small;

    if(large > max ) max = large;

  }

}

3. i번째로 작은 원소 찾기

int Selection(a[], n, i){

  Left = 0; Right = n-1;

  p = Partition(A, n);

  if(i == p+1) return A[p];

  else if(i<p+1) Selection(A[Left...p-1], (p-1)-Left+1, i);

    else Selection(A[p+1....Right], Right-(p+1)-1, i-p-1);

}

'알고리즘' 카테고리의 다른 글

연쇄 행렬 곱샘 알고리즘  (0) 2020.03.30
피보나치 수열 알고리즘  (0) 2020.03.30
합병 정렬 알고리즘  (0) 2020.03.30
분할함수 알고리즘  (0) 2020.03.19
퀵 정렬  (0) 2020.03.19