算法导论课后习题答案 第2章

习题2.1.2

#include

using namespace std;

int main()
{
    int i,j,num;
    int  quene[10] = { 9,4,7,1,8,3,6,2,5,0 };
    for (j = 0; j < 10; j++)
    {
        num = quene[j];
        int i = j - 1;
        for (; i >= 0 && quene[i] < num;i--)
        {
            quene[i + 1] = quene[i];
        }
        quene[i+1] = num;
    }

    for (int i = 0; i < 10;i++)
    {
        cout << quene[i]<     }
    return 0;

}

 

习题2.1.3

#include

using namespace std;

int main()
{
    int j;
    int aim = 10;
    int  quene[10] = { 9,4,7,1,8,3,6,2,5,0 };
    for (j = 0; j < 10; j++)
    {
        if (aim == quene[j])
        {
            cout << j+1 << endl;
            return j;
        }

    }    
    cout << "do not find" << endl;    
    return 0;
}

 

习题2.2-2

#include

using namespace std;

int main()
{
    int A[9] = { 1,8,4,6,2,9,5,3,7 };
    for (int i = 0; i < 8; i++)
    {
        int min = A[i];
        int n=0;
        int mad = A[i];
        for (int j = i; j < 9; j++)
        {
            
            if (min>A[j])
            {
                min = A[j];
                n = j;
            }
        }
        A[n] = mad;
        A[i] = min;
    }

    for (int  i = 0; i < 9; i++)
    {
        cout << A[i];
        cout << endl;
    }
}

你可能感兴趣的:(作业)