Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

그놈 정렬을 위한 자바 프로그램

<시간/>

Gnome Sort는 한 번에 하나의 요소로 작동하여 실제 위치로 가져옵니다. Gnome Sort를 구현하는 예를 살펴보겠습니다 -

예시

import java.util.Arrays;
public class Demo{
   static void gnome_sort(int my_arr[], int n){
      int index = 0;
      while (index < n){
         if (index == 0)
            index++;
         if (my_arr[index] >= my_arr[index - 1])
            index++;
         else{
            int temp = 0;
            temp = my_arr[index];
            my_arr[index] = my_arr[index - 1];
            my_arr[index - 1] = temp;
            index--;
         }
      }
      return;
   }
   public static void main(String[] args){
      int my_arr[] = { 34, 67, 89, 11, 0 , -21 };
      gnome_sort(my_arr, my_arr.length);
      System.out.println("The array after perfroming gnome sort on it is ");
      System.out.println(Arrays.toString(my_arr));
   }
}

출력

The array after perfroming gnome sort on it is
[-21, 0, 11, 34, 67, 89]

Demo라는 클래스에는 'gnome_sort'라는 정적 함수가 포함되어 있습니다. 여기서, 변수 'index'는 0으로 할당된다. 해당 인덱스 값이 배열의 길이보다 작으면 인덱스 값이 0인지 검사하고, 0이면 1씩 증가한다. 그렇지 않으면 특정 인덱스가 배열의 'index-1' 값보다 크면 'temp'라는 변수에 0이 할당되고 요소가 교체됩니다. '인덱스' 값이 감소합니다.

메인 함수에서 배열은 특정 값으로 정의되며 이 배열과 배열의 길이에 대해 'gnome_sort' 함수가 호출됩니다. 출력은 콘솔에 인쇄됩니다.