سورس کد الگوریتم مرتب سازی تعویضی(Exchange Sort)

 

این الگوریتم دارای دو پارامتر ورودی می باشد. آرایه و تعداد آرایه دو پارامتر ورودی هستند. در سورس های زیر فرض بر این گرفته شده است که آرایه شامل اعداد صحیح می باشند. خروجی الگوریتم یک آرایه مرتب شده است.

فرض بر اینکه آرایه ورودی با تعداد عناصر n و نام s را برای مرتب سازی داریم. سورس به صورت زیر است

 

الگوریتم مرتب سازی تعویضی در زبان PHP

 

function exchange_sort($n, $s) {
    for ($i = 0; $i < $n-1; $i++) {
        for ($j = $i + 1; $j < $n; $j++) {
            if ($s[$j] < $s[$i]) {
                // exchange $numbers[$i] and $numbers[j]
                $temp = $s[$i];
                $s[$i] = $s[$j];
                $s[$j] = $temp;
            }
        }
    }
    return $s;
}

 

الگوریتم مرتب سازی تعویضی در زبان JAVA

 

/**
 *
 * @author http://www.it3du.ir
 */
public class ExchangeSortJava {
    
    public static void main(String[] args) {
        ExchangeSortJava obj = new ExchangeSortJava();
        int[] s = {30,10,32,44,15};
        for (int i : s) {
            System.out.print(i + " ");
        }
        System.out.println("");
        obj.exchangeSort(5,s);
        for (int i : s) {
            System.out.print(i + " ");
        }
    }
    
    public void exchangeSort(int n, int s[]) {
        for (int i = 0; i < n -1; i++) {
            for (int j = i+1; j < n; j++) {
                if(s[i] > s[j]) {
                    // Exchange s[i] and s[j]
                    int temp = s[i];
                    s[i] = s[j];
                    s[j] = temp;
                }
            }
        }
    }
    
}

 

الگوریتم مرتب سازی تعویضی در زبان PYTHON

 

def exchangeSort (n, s) :
    for i in range(0, len(s)-1):
        for j in range(i+1, len(s)):
            if s[i] > s[j]:
                # Exchange s[i] and s[j]
                temp = s[i]
                s[i] = s[j]
                s[j] = temp
    

	
numbers = [5,20,3,88,9]
result = exchangeSort(5, numbers)
print(numbers)

 

الگوریتم مرتب سازی تعویضی در زبان C

 

void exchangeSort(int n, int s[])
{
    int i  = 0;
    int j = 0;
    for(i; i < n; i++)
    {
        for(j = i+1; j < n; j++)
        {
            if(s[i] > s[j])
            {
                // Exchange s[i] and s[j]
                int temp = s[i];
                s[i] = s[j];
                s[j] = temp;
            }
        }
    }
}

 

 

منبع : it3du.ir