Cod sursa(job #2063780)

Utilizator alexb97Alexandru Buhai alexb97 Data 11 noiembrie 2017 14:40:04
Problema Sortare prin comparare Scor 40
Compilator java Status done
Runda Arhiva educationala Marime 2.04 kb

import java.util.*;
import java.io.*;

public class Main {
    public static void main(String[] args)
    {
        Scan cin;
        PrintWriter cout;
        try
        {
            cin = new Scan("algsort.in");
            cout = new PrintWriter("algsort.out");

            int n = cin.nextInt();
            //cout.println(n);
            int x;
            int arr[] = new int[500001];
            for(int i = 0; i < n; ++i)
            {
                x = cin.nextInt();
                arr[i] = x;
            }
            BS(arr, n);

            for(int i = 0; i < n; ++i)
            {
                cout.print(arr[i] + " ");
            }
            cin.close();
            cout.close();

        }
        catch (Exception ex)
        {
            System.out.println(ex.toString());
        }

    }

    public static  void BS(int arr[], int n)
    {
        boolean swap;

        do
        {
            swap = false;
            for (int i = 0; i < n-1; ++i)
            {
                if (arr[i] > arr[i+1])
                {
                    int temp = arr[i];
                    arr[i] = arr[i+1];
                    arr[i+1] = temp;
                    swap = true;
                }
            }
            n--;
        }while (swap);

    }

    public static class Scan {
        private BufferedReader bufferedReader;
        private StringTokenizer stringTokenizer;

        Scan(String filename) throws FileNotFoundException
        {
            bufferedReader = new BufferedReader(new FileReader(filename));
        }
        private String next() throws IOException
        {
            while(stringTokenizer == null || !stringTokenizer.hasMoreElements())
            {
                stringTokenizer = new StringTokenizer(bufferedReader.readLine());

            }
            return stringTokenizer.nextToken();
        }
        int nextInt() throws IOException
        {
            return Integer.parseInt(next());
        }
        void close() throws IOException
        {
            bufferedReader.close();
        }
    }
}