آموزش Sort در برنامه نویسی جاوا
سلام دوستان و توسعه دهندگان عزیز در این سری از آموزش برنامه نویسی جاوا به آموزش Sort در برنامه نویسی جاوا می پردازیم از Sort به مظور مرتب کردن استفاده می شود انواع مختلف sort وجود دارد در این آموزش از کد ساده sort و همینطور نحوه اصلی متد sort کردن را مورد بررسی قرار میدهیم استفاده از متد sort ساده ترین حالت برای مرتب کردن آرایه است ولی شاید بهتر باشد کد مربوط به sort کردن اصلی را نیز یاد گیرید با ما همراه باشید تا نحوه sort کردن یک آرایه را یاد گیرید.
زمانی که بخواهیم یک آرایه را مرتب یا Sort کنیم می توانیم مثل زیر عمل کنیم.
1 2 3 4 5 6 | String[] fruits = new String[] {"Pineapple","Apple", "Orange", "Banana"}; Arrays.sort(fruits); int i=0; for(String temp: fruits){ System.out.println("fruits " + ++i + " : " + temp); } |
در بالا یک آرایه از رشته داریم بایکسری داده تست در بالا زمانی که رشته ما sort شود خروجی آن همانند زیر خواهد شد.
1 2 3 4 | fruits 1 : Apple fruits 2 : Banana fruits 3 : Orange fruits 4 : Pineapple |
در بالا عمل مرتب سازی یا sort به شکل صعودی یا ascending انجام شده است اگر بخواهیم برعکس این عمل یا نزولی یا descending را انجام دهیم باید مثل زیر عمل کنیم.
1 2 3 4 5 6 | String[] fruits = new String[] {"Pineapple","Apple", "Orange", "Banana"}; Arrays.sort(fruits,Collections.reverseOrder()); int i=0; for(String temp: fruits){ System.out.println("fruits " + ++i + " : " + temp); } |
خروجی کد بالا همانند زیر خواهد بود.
1 2 3 4 | fruits 1 : Pineapple fruits 2: Orange fruits 3 : Banana fruits 4 : Apple |
امکان sort کردن Collections ها نیز وجود دارد به مثال زیر توجه کنید.
1 2 3 4 5 6 7 8 9 10 | List<String> fruits = new ArrayList<String>(); fruits.add("Pineapple"); fruits.add("Apple"); fruits.add("Orange"); fruits.add("Banana"); Collections.sort(fruits); int i=0; for(String temp: fruits){ System.out.println("fruits " + ++i + " : " + temp); } |
خروجی کد بالا همانند زیر خواهد بود.
1 2 3 4 | fruits 1 : Apple fruits 2 : Banana fruits 3 : Orange fruits 4 : Pineapple |
حالا می خواهیم نحوه اصلی sort شدن را باهم بررسی کنم (جاوا از روش های دیگری برای sort استفاده می کند و بیشتر روش ها نیز همانند کد زیر است)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | public class BubbleSortExample { static void bubbleSort(int[] arr) { int n = arr.length; int temp = 0; for(int i=0; i < n; i++){ for(int j=1; j < (n-i); j++){ if(arr[j-1] > arr[j]){ temp = arr[j-1]; arr[j-1] = arr[j]; arr[j] = temp; } } } } |
در بالا از sawp استفاده کردیم و پایه sort کردن نیز مقایسه است.
این آموزش هم به پایان رسید.
موفق باشید.