設置 | 登錄 | 註冊

目前共有1篇帖子。

全排列算法

1樓 巨大八爪鱼 2016-3-13 17:13
#include <stdio.h>

void swap(int *a, int *b)
{
    int t = *a;
    *a = *b;
    *b = t;
}

void fun(int arr[], int n, int k)
{
    int i;
    if (k >= n)
    {
        for (i = 0; i < n; i++)
            printf("%d ", arr[i]);
        putchar('\n');
        return;
    }
    
    for (i = k; i < n; i++)
    {
        swap(&arr[k], &arr[i]);
        fun(arr, n, k + 1);
        swap(&arr[k], &arr[i]);
    }
}

int main()
{
    int arr[] = {1, 2, 3, 4};
    fun(arr, 4, 0);
    return 0;
}

內容轉換:

回覆帖子
內容:
用戶名: 您目前是匿名發表。
驗證碼:
看不清?換一張
©2010-2025 Purasbar Ver3.0 [手機版] [桌面版]
除非另有聲明,本站採用知識共享署名-相同方式共享 3.0 Unported許可協議進行許可。