開始閱讀一本新書,《啊哈!演算法》
一、最簡單的排序:桶排序
例:輸入五個數,輸出時按照大小順序排列
#include
intmain()
for(i=
0;i<=
10;i++
)//依次判斷a到a
for(j=
1;j<=a[i]
;j++
)printf
("%d"
,i);
return0;
}
執行演示:
please input注:如果要從大到小排序,只需改動for(i=0;i<=10;i++)為for(i=10;i>=0;i–)5 3 5 2 8
23558
二、氣泡排序:
#include
struct student
;//建立乙個結構體用來儲存學生的姓名和分數
intmain()
}}for(i=
1;i<=n;i++
)//輸出結果
printf
("%s\n"
,a[i]
.name)
;return0;
}
三、快速排序
#include
int a[10]
,n;//定義全域性變數
void
quicksort
(int left,
int right)
}/*最終將基準數歸位*/
a[left]
=a[i]
; a[i]
=temp;
quicksort
(left,i-1)
;//繼續處理左邊的,這裡是乙個遞迴的過程
quicksort
(i+1
,right)
;//繼續處理右邊的,這裡是乙個遞迴的過程
return;}
intmain()
小哼買書的兩種實現
1、桶排序
#include
intmain()
for(i=
1;i<=
1000
;i++
)//依次判斷1~1000這個1000個桶
return0;
}
2、氣泡排序
#include
intmain()
/*開始冒泡程式*/
for(i=
1;i<=n-
1;i++)}
}printf
("%d "
,a[1])
;//輸出第1個數
for(i=
2;i<=n;i++
)//從2迴圈到n
return0;
}
python第一章筆記 第一章 基礎
參與除法的兩個數中有乙個數為浮點數,結果也為浮點數 如 1.0 2,1 2.0,1.0 2.0 python print 1.0 2 結果 0.5 print 1 2.0 結果 0.5 print 1.0 2.0 結果 0.5 整數 整數,計算結果的小數部分被截除,只保留整數部分 不會四捨五入 如 ...
演算法導論筆記第一章
首先從別人的博文中看到乙個對演算法的最為簡單而又簡潔的理解 演算法 輸入 良好的計算過程 正確輸出。仔細想,就是這個樣子的。有時間,習慣了有問題就上網查詢,而漸漸使大腦變的遲鈍許多,遇到問題第一反應不是仔細想想而是想要去查查怎麼回事,這不是個好的習慣。要改正。下面是自己對習題的一些想法 1.1 1 ...
演算法導論筆記第一章
首先從別人的博文中看到乙個對演算法的最為簡單而又簡潔的理解 演算法 輸入 良好的計算過程 正確輸出。仔細想,就是這個樣子的。有時間,習慣了有問題就上網查詢,而漸漸使大腦變的遲鈍許多,遇到問題第一反應不是仔細想想而是想要去查查怎麼回事,這不是個好的習慣。要改正。下面是自己對習題的一些想法 1.1 1 ...