算法笔记

合抱之木,生於毫末;九層之臺,起於累土;千里之行,始於足下。

加總數字:

無論電腦再怎麼強,還是得一個一個數字累加。

void summation() 
{ 
    int array[5] = {3, 6, 9, -8, 1}; 
    for (int i=0; i<5; i++) 
        sum += array[i]; 
    cout << "總和是" << sum; 
}

複製字串

無論電腦再怎麼強,還是得逐字複製。

void copy(char* s, char* t) 
{ 
    int i; 
    for (i=0; s[i] != '\0'; ++i) t[i] = s[i]; 
    t[i] = '\0'; 
}

選擇排序法( Selection Sort )

把第一小的數值找出來,放在第一個位置;再把第二小的數值找出來,放在第二個位置。一次找一個數字,如此下去就可把所有數值按照順序排好了

void selection_sort() 
{ 
    int array[5] = {3, 6, 9, -8, 1}; 
    for (int i=0; i<5; ++i) 
    { 
        // 從尚未排序的數值中,找出第i小的數值 
        int min_index = i; 
        for (int j=i+1; j<5; ++j) 
            if (array[j] < array[min_index]) 
                min_index = j; 
        // 把第i小的數值,放在第i個位置 
        swap(array[i], array[min_index]); 
    } 
}

印出直角三角形

void print_line(int n)  // n 是一行的長度 
{ 
    for (int i=1; i<=n; i++) cout << ' '; 
    cout << '\n'; 
} 
// 多行成直角三角形 
void print_triangle(int n)  // n 是行數 
{ 
    for (int i=n; i>=1; i--) print_line(i); 
}
posted @ 2010-10-25 20:26  hailong  阅读(92)  评论(0编辑  收藏  举报