算法笔记
合抱之木,生於毫末;九層之臺,起於累土;千里之行,始於足下。
加總數字:
無論電腦再怎麼強,還是得一個一個數字累加。
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); }